我有一个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
答案 0 :(得分:1)
RowDetailsTemplate
的数据上下文应该是所选项目 - 因此您应该只绑定到scheduleCollection
:
<DataGrid IsReadOnly="true" ItemsSource="{Binding scheduleCollection}">
(...并使用AutoGenerateColumns="true"
,或手动添加DataGridColumns
)