绑定到另一个DataGrid中的选定项的DataGrid ItemSource

本文关键字:DataGrid ItemSource 另一个 绑定 | 更新日期: 2023-09-27 18:11:50

我有以下数据结构:

List<Customer> currentCustomers {...}
public class Customer 
{
    public string ID { get, set }
    public string Name { get, set } 
    [...]
    public List<Products> { get, set } 
}

我有一个客户数据网格绑定到currentCustomers列表。我希望能够做的是将第二个DataGrid绑定到客户中的选定项目,以显示该客户的所有产品信息。

。用户单击Customers DataGrid中的一个Customer,然后根据该Customers Products自动更新第二个DataGrid。

这可能吗?

如果是这样,是否有一个资源,将告诉/告诉我如何做到这一点?

绑定到另一个DataGrid中的选定项的DataGrid ItemSource

应该可以:

<DataGrid x:Name="one"></DataGrid>
<DataGrid x:Name="two" DataContext="{Binding ElementName=one, Path=SelectedItem.Products}"></DataGrid>

直接绑定到SelectedItem属性:

<DataGrid x:Name="customersList" CanSelectMultipleItems="false" ... />
<DataGrid x:Name="customerDetails" 
          ItemsSource = "{Binding ElementName = customersList, 
                                  Path = SelectedItem.Products}">