【发布时间】:2009-08-05 11:11:42
【问题描述】:
我在一个表单中有 3 个组合框,一个对象列表。我需要将组合框与列表中的 3 个不同的类成员绑定。 (C# 3.0、.NET 3.5) 我目前正在这样做
Title_Combo.DataSource = ListContaining.GroupBy(item => item.Title).Where(item => !item.Key.Equals(string.Empty)).ToList();
Title_Combo.DisplayMember = "Key";
其中 ListContaining 是对象主列表的子集。每次在这些组合框中的任何一个中选择项目时,ListContaining 都会根据对象主列表中的选定值填充,并且所有组合框都会重新加载。
ListContaining = ListFiles.Where(item => item.GetType().GetProperty(name).GetValue(item, null).Equals(int.Parse(Sender.SelectedItem.ToString()))).ToList();
它可以完美加载,但组合框的下一个选择会引发 NullReference 异常。
这是因为List ListContaining被重写还是什么原因,我可以弄清楚。
还有更好的方法来处理列表中的 3 个组合框。
感谢您的帮助。
编辑: 我已经放弃调试了。 但是任何人都可以建议一种将 3 个组合框与具有 3 个不同属性的对象列表绑定的方法。并且控件会根据索引更改进行更新。
【问题讨论】: