wpf在带有MVVM的Datagrid中级联组合框

时间:2015-03-06 06:05:39

标签: c# wpf mvvm

我正在寻找在WPF GridView中绑定几个级联组合框:

以下是我的要求:

我想开发一个人员记录的网格视图,它将保存他们的姓名,州名和城市名称。当然,城市组合框数据将取决于所选择的州。

数据网格项源是ObservableCollection,Person类看起来像这样:

class Person
{
    name string;
    state string;
    city string;
}

Datagrid窗口的View Model看起来像这样:

class DatagridWindowViewModel
{
    ObservableCollection<Person> PersonsList {get; set;}
}

我不想在本课程中保留州和市名单。在改变状态时,我应该从枚举中正确填充城市组合框。

我有国家和城市的枚举。

对于具有州名(比如n个州)的国家,1个枚举。 然后我没有。城市枚举

这可能是最好的方法,这样我就可以避免在MVVM之后的Person类中保留列表(即我不想让任何代码落后)。

我是SO的新手,如果我的问题不明确或者我无法以正确的方式提出问题,请告诉我。

1 个答案:

答案 0 :(得分:0)

在VM中保留城市和州的ID,将组合绑定到将从枚举生成的名称 - 值对列表,然后将其选定的值设置为人员的城市ID /州ID。