在WPF项目中,我在datagridcell中有按钮,当我按Tab键时它将首先聚焦单元格,然后按下此单元格内的按钮如何跳过单元格焦点列是动态的,我不知道哪个列有按钮或文本框
由于a中的按钮DataGrid不是标准列类型,我想你已经在使用了DataGridTemplateColumn.
除此之外DataGridTemplateColumn.CellTemplate,设置DataGridTemplateColumn.CellStyle样式以将DataGridCell.IsTabStop属性设置为False:
<DataGrid ItemsSource="{Binding Items}" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridCheckBoxColumn Binding="{Binding IsChecked}" Header="CheckBoxColumn" />
<DataGridTextColumn Binding="{Binding Text}" Header="TextColumn" />
<DataGridTemplateColumn Header="ButtonColumn">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Content="Text" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="IsTabStop" Value="False" />
</Style>
</DataGridTemplateColumn.CellStyle>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
Run Code Online (Sandbox Code Playgroud)