Как вызвать другое окно с помощью нажатия кнопки? - PullRequest
0 голосов
/ 12 апреля 2019

Я хочу иметь возможность нажать кнопку, чтобы программа открыла новое окно и закрыла старое.

Я следовал решениям по этой ссылке, но у меня никогда не было успеха ни с одним из них Как открыть второе окно из первого окна в WPF?

Вот моя работа так далеко:

Window editor = new Window();
editor.Show();
this.Close();

Но это ничего не делает.

Программа должна открыть новое окно и закрыть старое.

Ответы [ 2 ]

1 голос
/ 12 апреля 2019

Вы должны вызвать второе окно из первого. Это то, что я сделал для проекта, в котором появилось новое окно панели входа в систему:

 private void displayLoginPanel_Click(object sender, EventArgs e) 
 {
     LoginPanel myLogin = new LoginPanel(this);
     myLogin.Show();
     this.Hide();
 }

Я использовал hide () вместо close (), потому что вы можете видеть, что я отправляю ссылку родителя на дочернюю LoginPanel, чтобы вернуться позже. Вы можете заменить Hide () на Close ().

1 голос
/ 12 апреля 2019

Функционал, который вы описали, будет работать нормально. Проблема, скорее всего, связана с функцией или методом, в котором вы вызываете эту функцию.

Чтобы написать метод, который будет обрабатывать нажатие кнопки, как вы хотите, очень хорошо описано здесь: https://www.c -sharpcorner.com / forums / c-sharp-button-click-hold-and-release .

Надеюсь, это поможет вам, иначе просто спросите

Вот небольшая реализация, если это поможет:

public partial class MainWindow : Window
{
    private void MainWindow_KeyDown(object sender, KeyEventArgs e)
    {
        Window editor = new MainWindow();
        editor.Show();
        this.Close();
    }

    private void MainWindow_KeyUP(object sender, KeyEventArgs e)
    {

    }
    public MainWindow()
    {
        this.KeyDown += MainWindow_KeyDown;
        this.KeyUp += MainWindow_KeyUP;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...