如何通过valuemember c#从列表框中获取DisplayMemeber值?

时间:2012-11-22 11:48:49

标签: c# winforms listbox

我有一个listBox,如下所示:

ID ClientName

  1. Michael
  2. 史蒂夫
  3. 史密斯
  4. 现在,我知道客户端的ID,我如何获得它的DisplayMember?

4 个答案:

答案 0 :(得分:1)

转换为DataRowView并转换为按索引选择客户端名称列,即1。

String ClientName = (((DataRowView) listBox1.SelectedItem).Row[1]).ToString();

答案 1 :(得分:0)

你可以试试这段代码。如果DataSource的{​​{1}}为Listbox,则会编写示例,但如果是其他内容,请尝试查看“{1}}中的DataTable的类型object

(请注意,我不喜欢使用ListBox语句,但这是最快捷的方式)

break

答案 2 :(得分:0)

var t = from list in USStates where te.ShortName == textBox1.Text select te.LongName.ToString();     

foreach(String st in t)
 {
   MessageBox.Show(st);   
}

其中USStates是Generic List,TextBox1.text包含id的值.Considering listbox使用Generic list作为DataSource。

答案 3 :(得分:0)

有一个更简单的解决方案。特别是如果您正在构建DataSource,填充它,然后释放源。使用“项目”列表可以创建当前所选项目的DataRowView。然后只需拉出正确的索引。 0将为您提供“值成员”,1将为您提供“显示成员”。

DataRowView thisLine = cbTrackerFormList.Items[cbTrackerFormList.SelectedIndex] as DataRowView;