2011-04-26 87 views
0

我正在研究WPF应用程序(MVVM)并使用DevExpress GridCntrol。 我需要创建一个通用屏幕来显示具有参考数据的多个表(一次显示一个)的数据。 因此,网格控件需要绑定到可以包含不同列数的数据集,具体取决于正在查询的表。WPF Devx GridControl中的动态数据绑定

问题:

1)我的数据访问层应该返回什么类型的对象? 目前我只能想到一个数据集/数据表..是否有其他替代 ,因为我真的想避免使用数据集和数据表..也许是一个字谜? 什么是返回这些数据的最佳方式? 2)如果我返回除了数据集/数据表之外的其他东西,我该如何将我的GridControl与这个动态数据集合绑定?

非常感谢。

回答

4

我用与此类似,在过去成功

http://www.paulstovell.com/dynamic-datagrid

public class Property : INotifyPropertyChanged 
{ 
    public Property(string name, object value) 
    { 
     Name = name; 
     Value = value; 
    } 

    public string Name { get; private set; } 
    public object Value { get; set; } 
} 


public class Record 
{ 
    private readonly ObservableCollection<Property> properties = new ObservableCollection<Property>(); 

    public Record(params Property[] properties) 
    { 
     foreach (var property in properties) 
      Properties.Add(property); 
    } 

    public ObservableCollection<Property> Properties 
    { 
     get { return properties; } 
    } 
} 
<DataGrid 
    Name="dataGrid" 
    AutoGenerateColumns="false" 
    ItemsSource="{Binding Path=Records}"/> 
+0

辉煌......正是我一直在寻找一个办法!非常感谢qntmfred – Sennin 2011-04-26 14:07:26