ror*_*.ap 8 .net c# tuples winforms c#-7.0
我有一个System.Windows.Forms.Listbox和我创建的元组类型值的集合.也就是说,在C#7.0中引入了新的元组类型.我正在尝试将集合绑定到Listbox并将其设置DisplayMember为元组中的一个元素.这是一个例子:
var l = new List<(string name, int ID)>()
{
("Bob", 1),
("Mary", 2),
("Beth", 3)
};
listBox1.DataSource = l;
listBox1.DisplayMember = "name";
Run Code Online (Sandbox Code Playgroud)
但这不起作用.使用旧式风格,Tuple<T>您可以按照以下答案进行操作:
listBox1.DisplayMember = "Item1";
listBox1.ValueMember = "Item3"; // optional
Run Code Online (Sandbox Code Playgroud)
这也行不通.以下是我在两种情况下看到的情况:
我怎么能做到这一点?
伊万的回答,肯定描述了这个案子.作为一种解决方法,您可以使用Format事件ListBox显示name提交:
private void listBox1_Format(object sender, ListControlConvertEventArgs e)
{
e.Value = (((string name, int ID))e.ListItem).name;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
595 次 |
| 最近记录: |