Рациональная реализация перехода между формами WPF (без создания новых экземпляров класса)

Рейтинг: 1Ответов: 0Опубликовано: 28.02.2023

Написал программу, в которой реализовал систему входа и регистрации пользователя. Сделал через два окна. Сначала отображается окно входа, если же нет аккаунта, то предлагается его создать и далее переход на окно регистрации. Моя проблема в том, что я не знаю, как можно реализовать переход так, чтобы я мог играться с двумя экземплярами класса, а не создавать при каждом нажатии на кнопку все больше и больше новых экземпляров класса. Мне советовали использовать страницы, но мне по заданию нужны именно формы

Из главной формы входа на форму регистрации я попадаю так

 private void linkLabel_Click(object sender, EventArgs e)
        {
 
            this.Hide();
            FormRegistration formRegistration = new FormRegistration();
            formRegistration.Show();
            //this.Close();
 
        }

Из формы регистрации же (тут просто перед условием sql запрос)

                if (command.ExecuteNonQuery()==1)
                {
                    MessageBox.Show("Вы создали аккаунт!", "Успешно", MessageBoxButtons.OK, MessageBoxIcon.Information);

                    this.Hide();
                    Form formAhutorization = new FormAhutorization();
                    formAhutorization.Show();
                    //this.Close();
 
                }

                else
                {
                    MessageBox.Show("Аккаунт не создан!", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }

Была идея удалять экземпляры класса, когда создавались новые, но отладчик не показывал, что память очищается (да, я знаю, что затраты там несущественные, но все же). Но что-то не выходит это реализовать через Close() Была и другая идея, создать экземпляры класса вне кнопки, но у меня вылезала ошибка "System.StackOverflowException".

Ответы

Ответов пока нет.