datagridrow - WPF Datagrid-DataGridTemplateColumn problema de enfoque de la pestaña
datagrid wpf tutorial (4)
Descubrí un enlace en las discusiones de WPF datagrid codeplex http://www.codeplex.com/wpf/Thread/View.aspx?ThreadId=35540
Gracias a Vincent Sibal.
Estoy usando el datagrid de Microsoft WPF. He notado un comportamiento extraño con WPF datagrid DataGridTemplateColumn. Cuando utiliza la plantillaColumna en la cuadrícula y la columna de la plantilla contiene algunos controles cuando se tabula desde la columna anterior, el enfoque no se da automáticamente al primer elemento declarado en la columna de la plantilla. Los foucs se establecen inicialmente en el borde de la columna de la plantilla y cuando hacemos clic una vez más, el enfoque va a la primera columna. Cualquier solución para este problema. ¿Cómo puedo configurar el enfoque para que pase al primer elemento en la columna de la plantilla de la cuadrícula de datos cuando desactivo la pestaña?
Hay una solución que usa una clase estática y un cambio al Xaml para el control que desea enfocar. " WPF DataGrid: la tabulación de celda a celda no establece el foco en el control "
Me deshice de este problema manejando el evento PrepareCellForEdit de la cuadrícula. Aquí está el código
void HODataGrid_PreparingCellForEdit(object sender, DataGridPreparingCellForEditEventArgs e)
{
UIElement inputElement;
///
/// Texbox is the first control in my template column
///
inputElement = HODataGridHelper.GetVisualChild<TextBox>(e.EditingElement);
if (inputElement != null)
{
Keyboard.Focus(inputElement);
}
}
Resolvimos este problema modificando el estilo en DataGridCell:
<Style x:Key="DataGridCellStyle" TargetType="{x:Type DataGridCell}">
<Setter Property="IsTabStop" Value="False"/>