Взаимодействие. Триггеры таблицы данных столбца WPF - PullRequest
0 голосов
/ 11 июня 2018

У меня есть сетка данных, в которой я объявил шаблонный заголовок со списком.Моей первой идеей было запустить Interaction.Trigger на PreparingCellForEdit, но столбец шаблона с комбо не запускает его.Я пытался поставить триггер взаимодействия на комбо, и он не запускает даже DropDown

<WPFCtrlD:ExtDataGridTemplateColumn Header="{x:Static Translate:Translate.About}" Width="*" Tag="ID_SAP_MAPPING"
                                           IsReadOnly="False"  >
                    <DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <Grid>
                                <!--Visibility="{Binding IsClassSelected, Mode=OneWay, UpdateSourceTrigger=PropertyChanged,  
                                        Converter={StaticResource  BoolToVisibilityCollapsedInverteConverter }}"-->
                                <ComboBox ItemsSource="{Binding DataContext.characteristicFiltered,
                                Source={StaticResource ProxyElement}, Mode=OneWay, UpdateSourceTrigger=PropertyChanged }"
                                       SelectedValuePath="ID_SAP_NAME"
                                                DisplayMemberPath="ID_SAP_NAME"
                                   >
                                <i:Interaction.Triggers>
                                    <i:EventTrigger EventName="DropDown">
                                            <WPFCtrl:EventToCommand 
                                                PassEventArgsToCommand="True"
                                                Command="{Binding DataContext.PreparingCellForEditCommand, Source={StaticResource ProxyElement}}" />
                                        </i:EventTrigger>
                                    </i:Interaction.Triggers>
                                </ComboBox>
                                <!--<Label Visibility="{Binding IsClassNotSelected, Mode=OneWay, UpdateSourceTrigger=PropertyChanged,  
                                       Converter={StaticResource  BoolToVisibilityCollapsedInverteConverter }}"/>-->
                            </Grid>
                        </DataTemplate>
                    </DataGridTemplateColumn.CellTemplate>
                </WPFCtrlD:ExtDataGridTemplateColumn>

Есть какие-нибудь идеи о том, как вызвать событие для моей команды до того, как откроется выпадающий список?

спасибо, Андреа

1 Ответ

0 голосов
/ 12 июня 2018

Я считаю, что ComboBox, который мы используем в WPF, взят из пространства имен System.Windows.Controls, которое использует событие DropDownOpened .

source: https://msdn.microsoft.com/en-us/library/system.windows.controls.combobox.dropdownopened(v=vs.110).aspx

Ifс другой стороны, вы используете ComboBox, присутствующий в пространстве имен System.Windows.Forms, он использует событие DropDown .

source: https://msdn.microsoft.com/en-us/library/system.windows.forms.combobox.dropdown(v=vs.110).aspx

...