powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / TextBox и Popup
5 сообщений из 5, страница 1 из 1
TextBox и Popup
    #39646003
Iconfig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Подскажите про Popup.
Мне надо открыть всплывающее окно, когда пользователь нажимает на TextBox и не скрывать Popup , пока текстовое поле имеет фокус.

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
        <Grid>
        <StackPanel>
            <TextBox  x:Name="textBox"  GotFocus="textBox_GotFocus" />

            <Button Content="Button" Click="Button_Click"/>

            <Popup x:Name="popup" Width="100" Height="100" PlacementTarget="{Binding ElementName=textBox}" Placement="Bottom"
            StaysOpen="{Binding ElementName=text,Path=IsKeyboardFocused}" >
                <Grid Background="Blue">

                </Grid>
            </Popup>
            

        </StackPanel>
    </Grid>



Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            popup.IsOpen = false;
        }

        private void textBox_GotFocus(object sender, RoutedEventArgs e)
        {
            popup.IsOpen = true;
        }



Я нашел свойство StaysOpen="{Binding ElementName=,Path=IsKeyboardFocused}" . Но при применении этого Popup перестает скрываться, когда я нажимаю за пределами Popup. Приходится закрывать Popup принудительно для каждого компонента на форме, например при нажатии кнопки. Кроме того, я не понимаю, как закрыть Popup , если открыть Window в диалоговом режиме (ShowDialog), когда пользователь кликает за пределами Window.
В других ситуациях, не требуется принудительного закрытия Popup, достаточно указать StaysOpen="false".
Помогите правильно сделать Popup для TextBox.
...
Рейтинг: 0 / 0
TextBox и Popup
    #39646009
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Iconfigне скрывать Popup , пока текстовое поле имеет фокус.может так?
Код: c#
1.
IsOpen="{Binding ElementName=,Path=IsKeyboardFocused}"



ЗЫ: для оформления XAML-кода используйте тэг xml, а не C#
...
Рейтинг: 0 / 0
TextBox и Popup
    #39646065
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть такая проблема.
TextBox совершается MouseCapture за пределами Popup окна, из-за чего захват popup окна мышки отменяется и не восстанавливается. При этом, если будет всё происходит внутри Popup (TextBox находится внутри Popup окна), то захват мышкой Popup окна восстановится, после захвата TextBox.
Я решал это просто, открывал Popup окно поверх Textbox'а, в Popup находился TextBox, казалось, что он никуда и не девался :) но это другой текст бокс с поиском\фильтрацией или чем угодно.
...
Рейтинг: 0 / 0
TextBox и Popup
    #39646071
Iconfig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

IsOpen="{Binding ElementName=textBox,Path=IsKeyboardFocused, Mode=OneWay}". Не помогает, не закрывается Popup.
...
Рейтинг: 0 / 0
TextBox и Popup
    #39646238
Iconfig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Roman Mejtes,

Спасибо за подсказку!
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / TextBox и Popup
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]