Я использую элементы управления DevExpress WPF, особенно BarEditItem, ComboBoxEdit и GridControl. Обычно при использовании стандартного ComboBoxEdit при выборе элемента поле со списком закрывается.
Однако сейчас я устанавливаю ComboBoxEditSettings.PopupContentTemplate в GridControl. Всякий раз, когда я выбираю строку в GridControl (щелкая по ней), я хочу, чтобы раскрывающийся список закрывался. Это работает, когда я нажимаю клавишу, но не когда я просто нажимаю запись.
XAML выглядит так:
<dxb:BarEditItem.EditSettings >
<dxe:ComboBoxEditSettings
ItemsSource="{Binding Path=EditieCollection}"
DisplayMember="JaarEditieNummer"
AutoComplete="True"
Name="editieComboBox" AcceptsReturn="True" IncrementalFiltering="False" ImmediatePopup="True">
<dxe:ComboBoxEditSettings.PopupContentTemplate >
<ControlTemplate>
<dxg:GridControl
Name="PART_GridControl"
ItemsSource="{Binding Path=EditieCollection}"
AutoPopulateColumns="False" ShowBorder="False"
>
<dxg:GridControl.Columns>
<dxg:GridColumn x:Name="EditieJaarEditieNummer" FieldName="JaarEditieNummer" Header="Editie" Width="90" />
<dxg:GridColumn x:Name="EditieOplage" FieldName="OplageDatum" Header="Oplage" Width="90" />
<dxg:GridColumn x:Name="EditieVerschijning" FieldName="Datum" Header="Verschijnt" Width="90" />
<dxg:GridColumn x:Name="EditieOmschrijving" FieldName="Omschrijving" Header="Omschrijving" />
</dxg:GridControl.Columns>
<dxg:GridControl.View>
<dxg:TableView
Width="Auto"
AllowGrouping="False" IsGroupPanelMenuEnabled="False"
FocusedRow="{Binding Path=SelectedEditie, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
AllowEditing="False" AllowMoveColumnToDropArea="False" AllowMoving="False"
NavigationStyle="Row" ShowGroupPanel="False"
/>
</dxg:GridControl.View>
</dxg:GridControl>
</ControlTemplate>
</dxe:ComboBoxEditSettings.PopupContentTemplate>
</dxe:ComboBoxEditSettings>
</dxb:BarEditItem.EditSettings>
Я видел другие решения, в которых можно было бы установить для свойства .IsOpen стандартного элемента управления ComboBox значение false, но DevExpress ComboBoxEdit не имеет такого свойства (по крайней мере, я не знаю).
Спасибо!