Как закрыть выпадающий список при повторном нажатии на выпадающую кнопку? - PullRequest
1 голос
/ 18 июля 2011

У меня есть комбинированный список wpf с некоторыми пользовательскими элементами. При повторном нажатии на кнопку выпадающего меню я бы хотел, чтобы раскрывающийся список закрылся, но вместо этого он снова открывается. Я видел подобные проблемы в других приложениях, и я искал решение в Интернете, но безуспешно. Вот код на данный момент:

        <ComboBox Name="ComboBoxColorLut"
                  IsEditable="False"
                  SelectionChanged="ComboBoxColorLut_SelectionChanged"                       
                  ToolTip="Color lookup table"
                  HorizontalContentAlignment="Stretch">
                    <ComboBox.ItemContainerStyle>
                        <Style TargetType="{x:Type ComboBoxItem}">
                            <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
                </Style>
            </ComboBox.ItemContainerStyle>
            <ComboBox.ItemTemplate>
                <DataTemplate>
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition ></RowDefinition>
                            <RowDefinition Height="3"></RowDefinition>
                        </Grid.RowDefinitions>
                        <TextBlock Grid.Row="0" Text="{Binding Path=Name}"></TextBlock>
                        <Rectangle Grid.Row="1" Fill="{Binding LinearGradientBrush}"></Rectangle>
                    </Grid>
                </DataTemplate>
            </ComboBox.ItemTemplate>
        </ComboBox>

1 Ответ

1 голос
/ 05 августа 2011

Использование вашего элемента управления (удалив событие SelectionChanged) правильно работает для меня с PresentationFramework v4.0.30319.Посмотрите, устраняет ли проблема временное удаление события SelectionChanged.

...