Tôi có một DataGridComboBoxColum trong một DataGrid. Tôi muốn có thể nhấp vào ô một lần và thả xuống hộp tổ hợp. Hiện tại tôi phải bấm nhiều lần.DataGridComboBoxColumn - Tự động thả xuống trên một cú nhấp chuột
<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>
Bạn có cần 'cái DataGrid' để đi vào chế độ chỉnh sửa, ví dụ nâng cao BeginningEditEvent? – XAMeLi
Tôi chưa bao giờ nâng cao sự bắt đầu. Tôi có cần phải? –
Nhấp chuột đầu tiên trên một ô là thiết lập tiêu điểm trên ô và (có thể) chọn nó (phụ thuộc vào SelectionMode của 'DataGrid'), nhấp chuột thứ hai hiển thị EditingElement và đó là khi BeginningEditEvent được nâng lên (bởi' DataGrid '). Vì vậy, tôi hiểu rằng bạn không xử lý sự kiện này, cũng như logic của bạn không phụ thuộc vào việc 'DataGrid' đang ở chế độ chỉnh sửa (tức là IsEditingCurrentCell == true hay IsEditingRowItem == true), phải không? – XAMeLi