我有两个DataGrid元素。第一个加载了商品数据,第二个加载了基于第一个DataGrid的SelectedItem的其他数据。
第一个DataGrid与文章数据的绑定非常有效。
现在我有第二个,根据第一个选择,它应该显示更多数据。在ViewModel.cs中,我创建了以下内容:
public BindableCollection<ArticleDataModel> ArticleDataList {
get; set;
}
public BindableCollection<QuantityModel> WarehouseQuantityList {
get; set;
}
private ArticleDataModel currentSelection;
public ArticleDataModel CurrentSelection {
get {
return currentSelection;
}
set {
currentSelection = value;
NotifyOfPropertyChange(() => currentSelection);
this.LoadQuantity();
}
}
第一个DatagridView绑定到 ArticleDataList ,所有数据均正确显示。选择数据集时,我可以在调试器中看到调用LoadQuantity()方法,并且WarehouseQuantityList包含所有数据。
但是,数据不会显示给我,甚至记录行也不会显示。
XAML中的绑定看起来像这样:
<!-- Artikel ListView -->
<DataGrid Grid.Column="0" Grid.Row="0"
x:Name="ArticleDataList"
AutoGenerateColumns="False"
AlternatingRowBackground="#fafafa"
FontSize="14"
RowBackground="#eee"
HorizontalGridLinesBrush="#ddd"
VerticalGridLinesBrush="#ddd"
RowHeaderWidth="0"
SelectionMode="Single"
SelectionUnit="FullRow"
SelectedItem="{Binding CurrentSelection}">
和
<DataGrid x:Name="WarehouseQuantityList"
AutoGenerateColumns="False"
AlternatingRowBackground="#fafafa"
FontSize="14"
RowBackground="#eee"
HorizontalGridLinesBrush="#ddd"
VerticalGridLinesBrush="#ddd"
RowHeaderWidth="0"
SelectionMode="Single"
SelectionUnit="FullRow">
绑定两次都是 x:Name ,项目绑定是这样的:
<DataGridTextColumn Header="Lagerplatz" Width="250" Binding="{Binding Path=Lagerplatz}"/>
两者的绑定在技术上是相同的,但是我没有任何错误或异常。加载的数据是正确的,并且在WarehouseQuantityList中也可用。只有DataGrid看不到它们。所以我以为我在弄错,只是不知道在哪里?
我总是乐于接受提示:-)