2015-01-27 2 views
1

Я открываю вторую форму из своей основной формы. В поле со списком выбранное событие с измененным индексом.Скрыть и просмотреть обратную форму

Код в основной форме.

 if (cmbVtMgmnt.SelectedItem.ToString()=="Basic Voter Management") 
     { 
      this.Visible = false; 
      frmVoterOP votefrm = new frmVoterOP(); 
      votefrm.Show(); 
     } 

Как просмотреть основную форму или открыть основную форму из события щелчка этикетки второй формы.

private void lblBacktoMain_Click(object sender, EventArgs e) 
    { 
    //What should come here? 
    } 

ответ

1

Вы можете передать основной объект формы в форму frmVoterOP и использовать этот объект, чтобы показать или скрыть главную форму

В основной форме

frmVoterOP votefrm = new frmVoterOP(this); 

В frmVoterOP

MainForm frmMainForm; 
public frmVoterOP(MainForm mainForm) 
{ 
    frmMainForm = mainForm; 
} 

Для того, чтобы показать основную форму от frmVoterOP

private void lblBacktoMain_Click(object sender, EventArgs e) 
{ 
    frmMainForm.Show(); 
} 

Другой альтернативой может быть с помощью Form.Owner свойства второй формы.

В основной форме

if (cmbVtMgmnt.SelectedItem.ToString()=="Basic Voter Management") 
{ 
    this.Visible = false; 
    frmVoterOP votefrm = new frmVoterOP() {Owner = this}; 
    votefrm.Show(); 
} 

В frmVoterOP

private void lblBacktoMain_Click(object sender, EventArgs e) 
{ 
    MainForm mainForm = (MainForm)this.Owner; 
    mainForm.Show(); 
} 
+0

Вы можете показать, как открыть основную форму из формы VoterOP? – chathwind

+0

Эта строка «frmVoterOP votefrm = new frmVoterOP (this);» дает мне сообщение об ошибке: Наилучшее соответствие метода перегрузки для frmVoterOP (Mainform) имеет некоторые недопустимые аргументы. – chathwind

+0

Вы должны использовать свое имя формы вместо MainForm в конструкторе – Adil

1

Если возможно, вы можете также использовать ShowDialog():

if (cmbVtMgmnt.SelectedItem.ToString()=="Basic Voter Management") 
{ 
    this.Visible = false; 
    frmVoterOP votefrm = new frmVoterOP(); 
    votefrm.ShowDialog(); 
    this.Visible = true; 
} 

Так что теперь, когда votefrm закрыт, ваш основная форма должна появиться.

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