Показать диалог неактивности - PullRequest
0 голосов
/ 18 мая 2011

Я работаю над модулем, который выйдет из моего приложения, если не будет активным в течение 2 минут. Через 2 минуты я устанавливаю свойство visible моей формы как false и показываю экран выхода из системы. Когда пользователь снова входит в систему, я просто устанавливаю свойство visible последней активной формы как true.

Теперь Я показываю форму A, и в этой форме есть кнопка, которая отображает другую форму B в виде диалогового окна.

Когда приходит время выйти из системы, я просто устанавливаю свойство visible обеих форм (A, B) как false. А когда пользователь снова входит в систему, я устанавливаю это свойство как true.

Но проблема в том, что форма B теперь не отображается как диалог.

Также, если в моем коде входа я установил форму B как

form b.ShowDialog();

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

Может кто-нибудь объяснить причину такого поведения?

Я хочу показать форму B в виде диалога, а также хочу сохранить статус полей в форме.

> РЕДАКТИРОВАТЬ Этот код скрывает формы.

if (Program.issueDepositForm != null)//form B static reference Checking if form B is not null
{
    Program.issueDepositForm.Visible = false; //Form B
    Program.saleproduct.Visible = false;//Form A f static refrence
}

Этот код показывает их снова

Program.saleproduct.Visible = true; //Form Astatic refrence
if (Program.issueDepositForm.Visible == false) //Form B
{
    Program.issueDepositForm.ShowDialog();      //Form B
    //Program.issueDepositForm.Visible = true;

}

1 Ответ

0 голосов
/ 18 мая 2011

Когда вы устанавливаете Visible в false, форма закрывается. Этот ответ предлагает обходной путь, который заключается в отмене закрытия формы, чтобы его можно было повторно отобразить.

...