Obteniendo datos de una Lista en el ComboBox de un DataGrid.
Estoy teniendo problemas para obtener elementos de una lista a una columna de combobox en un datagrid en WPF. Esto es nuevo para mí, así que agradecería cualquier ayuda. Parece que hay muchas formas de hacerlo, pero no he sido capaz de hacer que ninguna de ellas funcione.
”’
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Positionname}"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<ComboBox x:Name="poscombo" Loaded="comboposloaded"/>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
Lista con datos en el código detrás
List
ACTUALIZACIÓN:
Terminé agregando un evento de carga para obtener la lista como ítem origen. La pregunta ahora es cómo obtener el valor seleccionado del combobox de vuelta en el bloque de texto?
C# agregado para obtener combo cargado.
private void comboposloaded(object sender, RoutedEventArgs e)
{
ComboBox cmb = (ComboBox)sender;
cmb.ItemsSource = PositionList;
cmb.DisplayMemberPath = "info";
cmb.SelectedValuePath = "psnme";
}</datagridtemplatecolumn>
davy.ai
Para obtener el valor seleccionado del combobox de vuelta al bloque de texto, puede utilizar el evento
SelectionChanged
del combobox. En el manejador de eventos, puede establecer la propiedadText
delTextBlock
en elSelectedValue
del combobox.