所以標題說這一切有點。我有一個MDI父項,它打開了一個讓我查看數據網格的子項,但此子項允許我選擇一行並從父項中打開一個不同的子項,以允許我編輯數據行。我如何禁用以前的孩子,直到當前的孩子關閉。有點像ShowDialog()但兒童形式?C#如何禁用一個不同的子窗體打開的MDI父窗體的子窗體
任何幫助將是偉大的:)
所以標題說這一切有點。我有一個MDI父項,它打開了一個讓我查看數據網格的子項,但此子項允許我選擇一行並從父項中打開一個不同的子項,以允許我編輯數據行。我如何禁用以前的孩子,直到當前的孩子關閉。有點像ShowDialog()但兒童形式?C#如何禁用一個不同的子窗體打開的MDI父窗體的子窗體
任何幫助將是偉大的:)
禁用窗體當您打開新的,對孩子的形式
無論您正在打開的子窗體形式封閉事件重新啓用:...
{
ChildForm f = new ChildForm();
f.FormClosed += F_FormClosed;
f.Show();
this.Enabled = false;
}
和
private void F_FormClosed(object sender, FormClosedEventArgs e)
{
this.Enabled = true;
}
這很容易投入到我目前的代碼,並做我需要感謝:) –
這個怎麼樣?
this.MdiParent.MdiChildren[0].Enabled = false;
我認爲這將工作,如果父母可以控制孩子,但第二個孩子只從第一個孩子開放。然後被告知第一個孩子的父母也是新孩子的父母。如果這是有道理的。 –
我認爲你使用WinForms? –
ShowDialog仍然可以工作,只要確保將創建表單傳遞給新的子窗口,即'yourform.ShowDialog(this);' –
ShowDialog有什麼問題?爲什麼它必須是MDI窗口?特別是因爲你不能對其他MDI窗口做任何事情? –