Используя C #, как я могу обновить метку, когда я выбираю элемент из ListBox? - PullRequest
1 голос
/ 03 декабря 2010

Hy,

В моем приложении ASP.NET у меня есть список с несколькими элементами и меткой.

Как мне обновить текст метки, когда я выбираю один элемент из списка? Например, если я выберу пункт «Первый», то текст моей метки будет «Первый»?

Спасибо Джефф

Ответы [ 4 ]

3 голосов
/ 03 декабря 2010

Лучше всего использовать javascript, если у вас нет причин для обратной отправки на сервер.

Лично мне нравится jQuery . Это будет выглядеть примерно так:

$('#ListID').change(function() {
    $('#LabelID').text(this.val());
});
0 голосов
/ 03 декабря 2010

Вы должны включить AutoPostBack в этом списке (в стрелке представления дизайна в верхнем правом углу элемента управления) и в Page_Load написать:

Label.Text = ListBox1.SelectedItem.Text;

Ноэто приведет к тому, что каждое изменение в listBox перезагружает страницу.Вы должны использовать JavaScript для этой цели ...

0 голосов
/ 03 декабря 2010

Используйте событие SelectedIndexChanged объекта ListBox, чтобы установить для текста метки значение выбранных элементов.

Что-то вроде:

<asp:ListBox ID="listBox" runat="server" AutoPostBack="True"
OnSelectedIndexChanged="listBox_SelectedIndexChanged"  />
<asp:Label ID="YourLabel" runat="server" />

и в коде:

protected void listBox_SelectedIndexChanged(object sender, eventargs e) {
     YourLabel.Text = listBox.SelectedItem.ToString();
}
0 голосов
/ 03 декабря 2010

Попробуйте это:

Добавьте OnSelectedIndexChanged = "ListBox1_SelectedIndexChanged" в свой список на странице aspx и в коде добавьте что-то вроде этого:

protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
 {
     lblYourLabel.Text = ListBox1.SelectedItem.ToString();
 }

Это должно установить текст вашего ярлыка равным тексту выбранного элемента в списке.

Надеюсь, это поможет.

...