如何从父DataGrid选定项分配Datagrid ItemSsource

时间:2012-11-23 06:32:52

标签: c# wpf xaml binding

我有一个Datagrid,在它的行详细信息模板中,我有另一个Datagrid

<DataGrid Name="dataGridWorkOrders" ItemsSource="{StaticResource workorders}" >
<DataGrid.RowDetailsTemplate>
  <DataTemplate>
        <Border BorderThickness="0" Background="BlanchedAlmond" Padding="10">
        <DataGrid IsReadOnly="True" AutoGenerateColumns="False" ItemsSource="{Element=dataGridWorkOrders,path=selectedItem}">
  </DataGrid>
 </Border>

Workorders Collection就像:

class WorkOrders : ObservableCollection<WorkOrder>
    {
        public WorkOrders()
        {
            var orderList = OrderDetailsProvider.GetOrders() as List<WorkOrder>;

            orderList.ForEach(
                        order => this.Add(order));
        }

WorkorderClass具有以下比例显示的以下字段。

 private string orderID;
 private int totalQuantity;
 private string status;
 private ObservableCollection<Schedule> scheduleCollection;

现在在我的第二个数据网格中,我想绑定到当前所选数据网格的 ScheduleCollection

1 个答案:

答案 0 :(得分:1)

RowDetailsTemplate的数据上下文应该是所选项目 - 因此您应该只绑定到scheduleCollection

<DataGrid IsReadOnly="true" ItemsSource="{Binding scheduleCollection}">

(...并使用AutoGenerateColumns="true",或手动添加DataGridColumns