2011-06-02 6 views
0

В C# .Net я пытаюсь получить данные из выбранного списка.Как получить данные из выбранного ListBox?

Например. Сначала я отобразил много данных в ListBox, которые были получены из базы данных MSSQL 2008. Когда я выбираю отдельные данные из этого списка, я хочу показать, что выбранные данные в текстовое поле ... Как я могу это сделать? мне нужна твоя отвечает, потому что я просто новичок, Пожалуйста, ответьте мне, если вы знаете .. Спасибо

ответ

2

Ловушка ListBoxSelectedIndexChanged событие, например, вы можете сделать,

private void listBox1_SelectedIndexChanged(object sender, System.EventArgs e) 
{ 
    textBox1.Text = listBox1.SelectedItem.ToString(); //let textBox1 be your TextBox name and listBox1 be your ListBox name 
} 
+0

Спасибо за ответ ... я также хотел бы знать, какое событие выбрать ListBox..SelectedIndexChanged (или) SelectedValueChanged .... Что это отличается от этого два? – Zoro

+0

Спасибо за ответ ... Я также хочу знать, какое событие выбрать ListBox..SelectedIndexChanged (или) SelectedValueChanged .... В чем разница между этими двумя? Пожалуйста, ответьте мне ..... Еще раз спасибо – Zoro

+0

Да .. ваш ответ правильный ... Но когда я выбрал данные из списка и отобразил эти данные в текстовом поле, есть только отображение «System.Data.DataRowView» Word ... Данные не отображаются .... – Zoro

1

В ASP.NET используйте нижеприведенный код:

var selectedValue = listBoxObj.SelectedItem.value; 
2

Это действительно зависит от того, как вы сохранили свои данные в списке. Является ли эта простая строка или какой-либо сложный объект, в любом случае вы можете применить выбранный элемент к соответствующему типу. Например, . Если список ваш ящик содержит только элементы типа строка, вы получите выбранный пункт

string value=(string) this.listBox1.SelectedItem; 

Если ListBox содержит другой сложный тип, вы получите выбранный пункт

SomeComplexObject value=(SomeComplexObject) this.listBox1.SelectedItem; 

Или если вы привязали список к какому-то типу данных или набору данных. вы можете получить значение выбранного элемента с помощью

string value=listBox1.SelectedValue.ToString(); 

Так что теперь, Когда ListBox выбранный индекс изменился. вы можете установить значение текстового поля, используя. Во-первых, подписаться на индекс ListBox измененном событие

this.listBox1.SelectedIndexChanged+=new EventHandler(changed); 

И обработчиком.

private void changed(object sender,EventArgs args) 
     { 
      //set your text box text property here 
      //with the code provided earlier 
     } 
Смежные вопросы