C# 组合未使用MVVM和XAML更新

C# 组合未使用MVVM和XAML更新,c#,xaml,mvvm,C#,Xaml,Mvvm,我无法使用MVVM方法在XAML中对组合进行数据绑定 我在代码中设置组合的源代码,如下所示: AgesViewModel agesViewModel = new AgesViewModel(); comboAge.SelectedValuePath = "AgeID"; comboAge.DisplayMemberPath = "Age"; comboAge.ItemsSource = agesViewModel.GetAges(); 组合的XAML是: <ComboBox x:Nam

我无法使用MVVM方法在XAML中对组合进行数据绑定

我在代码中设置组合的源代码,如下所示:

AgesViewModel agesViewModel = new AgesViewModel();
comboAge.SelectedValuePath = "AgeID";
comboAge.DisplayMemberPath = "Age";
comboAge.ItemsSource = agesViewModel.GetAges(); 
组合的XAML是:

<ComboBox x:Name="comboAge"
          SelectedValue="{Binding AgeID}" />
该组合是带有文本控件的页面的一部分,它们都可以很好地进行数据绑定。页面DataContext设置为ViewModel carViewModel,该模型具有名为AgeID的属性

因此,当组合更改的项目时,我希望用选定的值更新carViewModel.AgeID

无论何时我从组合中选择一个项目,都不会更新任何内容。我做错了什么

提前谢谢


我正在使用XAML、C4.5并在Visual Studio 2012中编写windows应用商店应用程序。

如果您想遵循MVVM模式,请在您的carViewModel中也提供组合框的数据并绑定到它

换言之:

<ComboBox x:Name="comboAge" ItemsSource="{Binding MyAgeList}" SelectedValue="{Binding AgeID}" />

好的,我已经做了,但是我有相同的结果。我的come的XAML现在是这样的:我的CarViewModel现在是这样的:public CarViewModel{AgeList=new AgesViewModel.GetAges;}public ObservableCollection AgeList{get;set;}为什么AgeList是ViewModels的集合?我试图为我的组合返回一个行列表。每行包含AgeID和一个描述,即我的年龄值1-3、4-6等。我肯定需要返回这个值吗?然后创建一个名为AGECASE的新类,该类具有这两个属性。这是您的模型,例如您的数据。在这种情况下,不应创建ViewModels数组。GetAges返回什么?它应该返回此AgeClass的列表。。。
public List<int> MyAgeList {get; set;}

// Constructor
public CarViewModel()
{
    MyAgeList = new AgesViewModel().GetAges();
}