Member 12840922 Ответов: 1

Как перемещаться между формами windows без потери данных


У меня есть мультиформная программа, над которой я сейчас работаю, и у меня есть навигация между формами, чтобы нормально работать, например, используя обычные методы:

private void newBtn_Click(object sender, EventArgs e)
        {
            newReport1 nr1 = new newReport1();
            nr1.ShowDialog();
        }

И:
private void newBtn_Click(object sender, EventArgs e)
{
    newReport1 nr1 = new newReport1();
    nr1.Show();
    this.Hide();
}


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

Когда я перемещаюсь между формами, важно, чтобы последняя форма также была скрыта/закрыта. Не хотите, чтобы пользователь мог видеть предыдущую форму во время работы с текущей формой (например, при переходе от формы 1 к форме 2 Форма 1 исчезает. При переходе от формы 2 к форме 1, Форма 2 должна исчезнуть.).

Что делает программа, так это то, что вы заполняете все формы в программе, а затем в конце она сохраняет данные в файл. А на другом экране вы можете просмотреть данные в формах. Я знаю очень простые вещи, но все еще учусь.

Что я уже пробовал:

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

1 Ответов

Рейтинг:
2

OriginalGriff

Просто: используйте ShowDialog, но сначала спрячьтесь:

private void newBtn_Click(object sender, EventArgs e)
    {
        newReport1 nr1 = new newReport1();
        Hide();
        nr1.ShowDialog();
        Show();
        string value = nr1.MyPropertyFromTheReportForm;
    }


И взгляните на это:
Передача информации между двумя формами, Часть 1: Родитель-Ребенок[^]
Передача информации между двумя формами, Часть 2: Ребенок-Родитель[^]
Передача информации между двумя формами, Часть 3: Ребенок ребенку[^]