我正在搜索如何在MVVM方式中从Ilist创建DataGrid中的可变数量的列。我正在处理的要求非常大,行和列的数量也不知道但我没有找到满意的答案
是否有人必须做同样的事情?
如果没有办法生成这样的列,我知道我可以通过将DataGrid绑定到DataSet来实现。然后我还有一个问题;如果我使用的是DataSet,如何根据某些参数在不同的单元格中显示不同的UI?
请帮助它非常紧急的要求!!!!!!!!
答案 0 :(得分:1)
好的,我自己没有尝试过,但我认为你应该能够通过创建动态对象并绑定到MyDynamicObject列表来解决这个问题。 WPF支持绑定到动态对象(MSDN)。 理论上它可以像这样工作:
public List<dynamic> MyDynamicList {get; set;}
dynamic obj = new MyDynamicObject();
obj.DisplayCode = "Test";
obj.SomeProperty = "hello world";
MyDynamicList.Add(obj);
您需要通过实施IDynamicMetaObjectProvider
和DynamicMetaObject
来创建MyDynamicObject。有关here的更多信息。
希望这会让你朝着正确的方向前进......