2010-10-04 26 views
1

我正在尋找如何在MVVM方式從Ilist在DataGrid中創建可變數量的列。我正在處理的要求非常大,行數和列數也不知道但是我沒有找到滿意的答案WPF MvvM DataGrid變量列通過IList的列

有沒有人需要做同樣的事情?

如果沒有辦法生成這樣的列,我知道我可以通過將DataGrid綁定到DataSet來實現。然後我還有一個問題;如果我使用的是數據集,如何根據某些參數在不同的單元格中顯示不同的用戶界面?

請幫助其非常迫切的要求!!!!!!!!

回答

1

好的,我沒有嘗試過這個,但我認爲你應該能夠通過創建一個動態對象並綁定到MyDynamicObject列表來解決這個問題。 WPF支持綁定到動態對象(MSDN)。 理論上它可以工作是這樣的:

public List<dynamic> MyDynamicList {get; set;} 

dynamic obj = new MyDynamicObject(); 
obj.DisplayCode = "Test"; 
obj.SomeProperty = "hello world"; 
MyDynamicList.Add(obj); 

您將需要通過實施IDynamicMetaObjectProviderDynamicMetaObject創建MyDynamicObject。更多關於這個here

希望這會讓你在正確的方向...