Tengo un DataGridComboBoxColum en un DataGrid. Me gustaría poder hacer clic en la celda una vez y tener desplegado el cuadro combinado. Actualmente tengo que hacer clic varias veces.DataGridComboBoxColumn - menú desplegable automático en un solo clic
<DataGrid AutoGenerateColumns="False" Height="148" HorizontalAlignment="Left" Margin="48,85,0,0" Name ="dg_display" VerticalAlignment="Top" Width="645" CanUserAddRows="False" CanUserDeleteRows="False" ItemsSource="{Binding}" SelectionChanged="DgDisplaySelectionChanged">
<DataGrid.Columns>
<DataGridTextColumn IsReadOnly="True" Header="Symbol" Binding="{Binding Symbol}" />
<DataGridTextColumn IsReadOnly="True" Header="Company ID" Binding="{Binding CompanyID}" />
<DataGridComboBoxColumn IsReadOnly="False" Header="Sector" SelectedValueBinding="{Binding Sector}" DisplayMemberPath="{Binding [0]}" Visibility="Visible" >
<DataGridComboBoxColumn.EditingElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding SectorList}" />
</Style>
</DataGridComboBoxColumn.EditingElementStyle>
<DataGridComboBoxColumn.ElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding SectorList}" />
</Style>
</DataGridComboBoxColumn.ElementStyle>
</DataGridComboBoxColumn>
</DataGrid.Columns>
</DataGrid>
¿Necesita el 'DataGrid' para entrar en el modo de edición, es decir, el aumento de la BeginningEditEvent? – XAMeLi
Nunca planteo el evento principiante. ¿Realmente necesito? –
El primer clic en una celda es establecer el foco en la celda y (tal vez) seleccionarlo (depende del SelectionMode del 'DataGrid'), el segundo clic muestra el elemento EditingElement y es cuando se produce el BeginningEditEvent (por el' DataGrid '). Así que entiendo que no está manejando este evento, ni su lógica depende de si 'DataGrid' está en modo de edición (es decir, si IsEditingCurrentCell == true o IsEditingRowItem == true), ¿verdad? – XAMeLi