在数据网格中查找文本框

本文关键字:查找 文本 网格 数据 数据网 | 更新日期: 2023-09-27 18:12:50

我有一个包含四列的数据网格。

所以从这个数据网格在c#方面,我想找到特定的文本框名称= "headBox"

我该怎么做呢?我的专栏示例如下。此部分位于Datagrid中。列在datagrid标签内,name = dgrid

<DataGridTemplateColumn Header="Header">
        <DataGridTemplateColumn.CellTemplate>
            <DataTemplate>
                  <TextBox Name="HeadBox"/>
        </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>

在数据网格中查找文本框

我想你可以用

DataGridRow row = myDataGrid.ItemContainerGenerator.ContainerFromIndex
(myDataGrid.SelectedIndex) as DataGridRow;
var i = 0; /// Specify your column index here.

编辑

TextBox ele = ((ContentPresenter)(myDataGrid.Columns[i].GetCellContent(row))).Content as TextBox;
<DataGridTemplateColumn  Header="ClientDomain"   Width="130" >    
<DataGridTemplateColumn.CellTemplate>    
<DataTemplate>    
<TextBox x:Name="directionColumnTextBlock"  Text="{Binding Path=ClientDomain,Mode=TwoWay}"/>    
<DataTemplate.Triggers>    
<DataTrigger Binding="{Binding IssReadOnly}" Value="true">    
<Setter TargetName="directionColumnTextBlock"  Property="IsReadOnly" Value="true"  />    
</DataTrigger>    
</DataTemplate.Triggers>    
</DataTemplate>    
</DataGridTemplateColumn.CellTemplate>    
</DataGridTemplateColumn >     

DataGridRow row = dataGrid.ItemContainerGenerator.ContainerFromIndex
(dataGrid.SelectedIndex) as DataGridRow;    
TextBox clientDomain= ((ContentPresenter)(dataGrid.Columns[2].GetCellContent(row))).Content as TextBox