Как закрыть всплывающее окно userControl - PullRequest
0 голосов
/ 08 января 2019

Я хочу закрыть пользовательский элемент управления нажатием кнопки. UI

Таким образом, красный пользовательский элемент управления должен закрываться при нажатии кнопки. Но с моим кодом закрыто все приложение.

Это не работает:

Window.GetWindow(this).Close(); Это также не работает:

Window parentwin = Window.GetWindow(this); parentwin.Close(); Когда я запускаю один из них, все приложение закрывается ...

В результате я хочу, чтобы определенный пользовательский элемент управления закрылся, а проект - нет.

Ответы [ 2 ]

0 голосов
/ 08 января 2019

Для этого можно использовать всплывающий элемент управления.

    <CheckBox Name="CheckBoxIsOpen"  Content="IsOpen" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top"/>
    <Popup Name="myPopup" Width="300" Height="100" PlacementTarget="{Binding ElementName=CheckBoxIsOpen}" VerticalOffset="10" IsOpen="{Binding ElementName=CheckBoxIsOpen, Path=IsChecked}">
        <Border BorderBrush="Black" BorderThickness="1" Background="LightGray">
            <TextBlock Text="This is the content of my popup."/>
        </Border>
    </Popup>

Затем вы можете показать или скрыть всплывающее окно, установив свойство IsOpen.

myPopup.IsOpen = true;
0 голосов
/ 08 января 2019

Вы можете использовать всплывающее окно, чтобы показать usercontrol

Popup p = new Popup();
YourUserControl yuc = new YourUserControl();
p.Child = yuc;
p.IsOpen = true;

и вы можете закрыть его, используя

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