example data wpf data-binding datagrid combobox

example - WPF DataGridComboBoxColumn



wpf datagrid example (1)

Hola. Estoy usando WPF DataGrid y estoy intentando que ComboBox Column funcione.

<tk:DataGridComboBoxColumn Header="GroupLevel" DisplayMemberPath="Type" SelectedItemBinding="{Binding Path=GroupLevel}" > <tk:DataGridComboBoxColumn.EditingElementStyle> <Style TargetType="ComboBox"> <Setter Property="ItemsSource" Value="{Binding Path=GroupLevel.Group.GroupLevels}" /> </Style> </tk:DataGridComboBoxColumn.EditingElementStyle> </tk:DataGridComboBoxColumn>

Cuando miro la cuadrícula, la columna está en blanco, como si no estuviera usando la ruta del miembro de la pantalla. Pero una vez que hago clic en la columna, aparece el cuadro combinado y muestra todos los elementos en mi ItemsSource y selecciona el correcto, así sé que todos los enlaces funcionan correctamente, incluso el DisplayMemberPath. Es justo cuando no estoy editando la celda que aparece en blanco.

¿Extrañé una propiedad en algún lugar?

Gracias, Raul


Estoy bastante seguro de que esto se debe a que cuando no estás en el modo de edición, tu Columna no tiene una fuente de elementos y un ComboBox no puede tener un elemento seleccionado sin una fuente de elementos. tan pronto como vaya al modo de edición, su columna obtiene su fuente de elementos y todo está bien. puede solucionar esto especificando una fuente de elementos como tal: -

<tk:DataGridComboBoxColumn.ElementStyle> <Style TargetType="ComboBox"> <Setter Property="ItemsSource" Value="{Binding Path=GroupLevel.Group.GroupLevels}" /> </Style> </tk:DataGridComboBoxColumn.ElementStyle>

luego, tanto su elemento de edición como su elemento (sin edición) tienen el mismo ItemSource