2010-05-25 98 views
1

這似乎是綁定的,但Details Grid中的行是空的。有東西關閉/丟失?在DataGrids裏添加DataGrid RowDetailsTemplate

我也試過{結合SubCustomers}

SubCustomers是父對象的列表。

我能夠這樣結合到單一的領域,如名字等..只是不子集合..

 <DataGrid.RowDetailsTemplate> 
      <DataTemplate> 
       <DataGrid AutoGenerateColumns="True" ItemsSource="{Binding Source=SubCustomers}" /> 
      </DataTemplate> 
     </DataGrid.RowDetailsTemplate> 

回答

1

的問題是,你正在試圖綁定到一個屬性上的的DataContext父母,而不是在特定的行上。因此,RowDetailsDataContext是行項目,並且爲了獲取父項的屬性,您需要使用RelativeSource綁定。如果您綁定到家長的DataContext,則可以對您實際關心的財產「點下」:

<DataGrid.RowDetailsTemplate> 
     <DataTemplate> 
      <DataGrid AutoGenerateColumns="True" 
         ItemsSource="{Binding DataContext.SubCustomers, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}" /> 
     </DataTemplate> 
    </DataGrid.RowDetailsTemplate> 
+0

謝謝。 這仍然不起作用,而現在,而不是獲得具有空行的細節網格,我只是得到空的空間。 也, 如果父級的DataContext不是特定的行,爲什麼這個工作正確? 2010-05-25 17:43:18

+0

詳細信息是行...我認爲你的SubCustomers在父列表中(這沒有多大意義,我知道,但這就是我讀的方式你的問題)。在這種情況下,您應該能夠直接綁定到列表。該列表是否始終填充?如果不是,它是一個ObservableCollection? – 2010-05-25 17:46:06

相關問題