たくさんのWindowsフォームがあります。各フォームには、フォームを切り替えるための「戻る」ボタンと「次へ」ボタンがあります。たとえば、Form3で[戻る]をクリックしてから、Form2に移動します。次に、Form2の[次へ]ボタンをクリックすると、Form3が表示されます。
さて、私の質問は、最初から「次へ」をクリックすると、スムーズに動作するということです。ただし、Form3で[戻る]をクリックすると、Form2が表示され、Form3で[次へ]をクリックすると、Form3に移動します。コードはForm3_Loadイベントに移動しません。私のコードの何が問題になっていますか?
public partial class Form3 : Form
{
Form2 FormPrev;
Form4 FormNext;
List<DataRow> drlist = new List<DataRow>();
DataTable dt = new DataTable();
public Form3(Form2 _FormPrev)
{
InitializeComponent();
this.FormPrev = _FormPrev;
}
private void btnCancel_Click(object sender, EventArgs e)
{
this.Close();
}
private void btnNext_Click(object sender, EventArgs e)
{
ShowNext();
}
private void btnBack_Click(object sender, EventArgs e)
{
ShowPrev();
}
private void ShowNext()
{
if (FormNext == null)
FormNext = new Form4(this);
FormNext.Show();
this.Hide();
}
private void ShowPrev()
{
FormPrev.Show();
this.Hide();
}
private void Form3_Load(object sender, EventArgs e)
{
// blah blah.
}
ありがとう。