私はこれらのフォームを持っています:
MainScreen- MDIコンテナ
DataBaseOutput-子
NewAnime-子
DataBaseOutputには、それぞれ異なるテーブルのデータグリッドを保持するタブコントロールがあります。アクセスデータベースを使用しています。
これらのタブには、「新規」、「編集」、「削除」などの関数が呼び出されるメニューストリップがあります。ここで、最初のタブのメニューストリップを表示して[新規]をクリックすると、MDIコンテナ内の[NewAnime]フォームを開きます。しかし、これは私が計画したようには機能していません。最初は、子フォーム(DataBaseOutput)から呼び出してみました。その結果、子ではなく新しいフォームが開かれました。私がそれを子供にしたとき、それは現れませんでした。
それから私はたくさんのことを試してみますが、それでも私はそれを理解していません。
これは、フォームを呼び出すための現在のコードです。メインフォームのメソッドを使用してフォームを呼び出します。
private void NewAnime_Click(object sender, EventArgs e)
{
MainScreen main = new MainScreen();
main.mShowForm(2);
this.Close();
}
メインフォームのメソッド:
// Forms for MDI Parent
DataBaseOutput OutputForm = new DataBaseOutput();
NewAnime AddAnime = new NewAnime();
// How i made them childs (this is at the InitializeComponent(); part)
OutputForm.MdiParent = this;
AddAnime.MdiParent = this;
public void mShowForm(int formnumber)
{
switch (formnumber)
{
case 1: OutputForm.Show(); break;
case 2: AddAnime.Show(); break;
}
}
誰かが私が間違っていることの手がかりを持っていて、おそらくより良い考えを持っていますか?これは少し手間がかかるかもしれませんが、私が言ったように、MDIフォームを使用するのは初めてであり、それを機能させようとしています。