2014-06-20 3 views
-6

У меня есть кнопка на странице (Page1) в приложении WPF, если я нажимаю эту кнопку на Page1 я хочу, чтобы закрыть окно 1, i'am с помощью этого кодаКак я могу закрыть вдовам на МОФ

MainWindow main = new MainWindow(); 
      main.Close(); 

но mainwindow steel open как я могу закрыть Window1? Примечание: Страница 1 отображается в рамке из окна1.

+0

@Savanna У меня нет идеи о том, что я могу сделать в этом случае –

+1

Похоже, вы создаете новое окно, не ссылаясь на существующее окно. Покажите код, где MainWindow открывает второе окно. –

+0

@GrantWinney Как я могу это сделать? –

ответ

1

Хорошо, давайте сделаем это немного легче понять.

В вашем случае у вас есть простая дверь. Вы открываете эту дверь (аналогично открытию приложения). Теперь у вас ЭТА дверь как переменная. Скажем, это называется «doorForRoom1».

Если вы хотите закрыть эту дверь, вы должны закрыть ДАННУЮ дверь, которую сохранили выше.

Что ВЫ ДОЛЖНЫ: Вы создаете дверь (MainWindow) и открываете ее (это будет сделано, когда вы откроете приложение). . Теперь, если нажать на кнопку, создать еще одну дверь (с кодом MainWindow main = newMainWindow() и закрыть эту дверь (это даже не открыть) Так что ваша дверь с самого начала все еще открыт

Что вы должны сделать:. Вы создаете дверь (MainWindow) и открыть его (это будет сделано, когда и открыть приложение). Получить эту дверь и закрыть ее

НЕ создать новую дверь (MainWindow).

код в этот случай:

this.Close(); 
+0

Если я пишу this.close(); это значит, что я закрываю страницу, но я хочу, чтобы содержимое mainwindow осталось на страницах –

+0

@MahmoudSamy Вы пробовали? –

+0

Используйте этот 'Application.Current.MainWindow.Close()' – coolerfarmer

Смежные вопросы