我对WPF很新,很抱歉,如果我不太清楚......
我有一个UserControl,它包含一个DataGrid。我有一个ViewModel,它包含List<>,' ListA'类型的两个属性。和' ListB'。我在UserControl中创建了一个来自ViewModel的DataContext。 UserControl中的DataGrid应该显示两个列表之一的内容,具体取决于输入。
我的问题是,根据用户输入,我不知道如何在运行时更改DataGrid显示的列表。
我知道将图形元素与某些数据相关联的两种方法是.xaml代码,Content="{Binding ListA"}
,这是不合适的,因为它硬编码要显示的列表,所以我无法改变它。我能想象的另一个选择就是在CodeBehind中说TheDataGrid.ItemsSource=DataContext.ListA
之类的东西。这样,我可以动态地将另一个列表设置为DataGrid。问题是我似乎无法在后面的代码中以这种方式访问DataContext的数据。