如何在选定项目更改时从列表框中检索所有数据

时间:2012-11-15 12:37:16

标签: c# listbox

我将数据表作为数据源提供给Lisbox。 该表字段是ID,主题,文本和ID是唯一字段(PK)。 但是主题显示为DisplayMember。

这是我的数据源代码:

lbTexts.DataSource = mDataSet.Tables["Story"];
lbTexts.DisplayMember = "Subject";

我想知道用户选择了哪些行以及唯一值是什么。 我发现它有10行代码。但我希望有一种简单的方法可以找到它。

3 个答案:

答案 0 :(得分:3)

如果使用ValueMember属性并将其设置为Id,则可以使用SelectedValue参数而无需整个数据集。如果列表中的选定索引与数据中的索引不匹配,您也可以保证不会出现错误。

lbTexts.ValueMember = "Id";

// Later
int selectedId = Int32.Parse(lbTexts.SelectedValue);

答案 1 :(得分:2)

使用SelectedItem获取当前选定的项目,并使用SelectedValue获取值。

selectedItem示例

String value = lbTexts.SelectedItem.Value;

selectedValue的示例:

String txt = lbTexts.SelectedValue.ToString();

答案 2 :(得分:2)

试试这个,

string value = lbTexts.SelectedItem.Value;