2017-04-02 60 views
1

我有一个WPF内部元素的问题。它是innerGrid DataGrid。 我只有在正常的Datagrid后面的代码中没有访问权限。我忘了在xaml-code中添加一些东西吗?WPF:无法访问内部Datagrid

<DataGrid x:Name="dataGrid" ItemsSource="{Binding Path = data, IsAsync=True}" HorizontalAlignment="Left" Height="198" Margin="35,38,0,0" VerticalAlignment="Top" Width="474" AutoGenerateColumns="False" IsReadOnly="True"> 
     <DataGrid.RowHeaderTemplate> 
      <DataTemplate> 
       <Expander Expanded="Expander_Expanded" Collapsed="Expander_Collapsed"> 
       </Expander> 
      </DataTemplate> 
     </DataGrid.RowHeaderTemplate> 
     <DataGrid.RowDetailsTemplate> 
      <DataTemplate> 
      <DataGrid x:Name="innerGrid" Height="200"> 
        <DataGrid.Columns> 
         <DataGridTextColumn Header="Patientennummer" /> 
        </DataGrid.Columns> 
       </DataGrid> 
       </DataTemplate> 
      </DataGrid.RowDetailsTemplate> 
      </DataGrid> 
+0

如果您尝试以“innerGrid”的形式访问它,会发生什么? – Mathew

+0

他将无法从后面的代码作为其当前内部数据模板访问它。 – Parag

+0

当我尝试访问它时,出现此错误:名称“innerGrid”在当前上下文中不存在。 – treun

回答

0

您可以在主“dataGrid”的LoadingRowDetails事件中访问内部网格。或者,您可以为“内部网格”添加“Loaded”事件,并在此事件处理程序中,您可以对内部网格执行任何您想要的操作。

希望这会有所帮助。