Поле со списком WPF + MouseLeftButtonDown - PullRequest
0 голосов
/ 06 марта 2009

Надеюсь, кто-то может помочь, потому что я не смог понять это. Вот мой код xaml для всплывающего / комбинированного окна, пожалуйста, не используйте другой код до и после этого для остальной части макета.

    <Popup x:Name="popupMethods" Height="400" Width="150" 
       StaysOpen="False" Placement="Bottom" IsOpen="false"
       HorizontalAlignment="Left">
                <ComboBox x:Name="combo" MouseLeftButtonDown="combo_MouseDown">
                    <TextBlock>Hello</TextBlock>
                    <TextBlock>World</TextBlock>
                    <TextBlock>This</TextBlock>
                    <TextBlock>is</TextBlock>
                    <TextBlock>Autocomplete</TextBlock>
                    <TextBlock>Textbox</TextBlock>
                </ComboBox>
    </Popup>

Настройте его на всплывающее окно, когда пользователь начинает печатать, что работает. Проблема в том, что я хочу, чтобы пользователь мог щелкнуть одно из слов в поле со списком, и оно вставляется в текстовое поле. Эти части, не работающие как MouseLeftButtonDown, никогда не запускаются. Я пробовал несколько разных методов, в том числе с этого сайта http://www.designerwpf.com/2008/12/03/getting-a-mouseleftbuttondown-or-mouseleftbuttonup- события из-вашего-текстового поля /

и еще один, который я видел где-то еще, который был комбинированным. MouseLeftButtonDown + = делегат {};

Спасибо за любую помощь.

Ответы [ 2 ]

2 голосов
/ 31 декабря 2015

Вместо MouseLeftButtonDown обработчика событий, используйте PreviewMouseLeftButtonDown, вы можете достичь того же.

0 голосов
/ 06 марта 2009

Вы, вероятно, хотите посмотреть на событие SelectionChanged. Он срабатывает всякий раз, когда выбран элемент в раскрывающемся списке ComboBox.

Я думаю, что ComboBox внутренне обрабатывает событие MouseLeftButtonDown, и это приводит к тому, что оно не передается в ваш код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...