我有一个 System.Windows.Forms.Listbox
以及我创建的元组类型值的集合。即 the new tuple type introduced in C# 7.0 .我正在尝试将集合绑定(bind)到 Listbox
并设置 DisplayMember
到元组中的元素之一。这是一个例子:
var l = new List<(string name, int ID)>()
{
("Bob", 1),
("Mary", 2),
("Beth", 3)
};
listBox1.DataSource = l;
listBox1.DisplayMember = "name";
不过,这行不通。与老款Tuple<T>
你应该可以做描述的事情in this answer :
listBox1.DisplayMember = "Item1";
listBox1.ValueMember = "Item3"; // optional
那也不行。这是我在这两种情况下看到的:
我怎样才能做到这一点?
最佳答案
不幸的是,C#7 值元组不能用于数据绑定(bind),因为它们使用 fields ,而 Windows 窗体标准数据绑定(bind)仅适用于属性。
关于c# - 如何将 C# 7.0 元组类型值的集合绑定(bind)到 System.Windows.Forms.Listbox 并将显示成员设置为元素之一?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47776022/