Я создаю приложение формы Windows в visual studio 2010, используя C#, который был в форме mdi. Мне уже удалось подключить дочерние формы к соответствующим элементам управления полосой меню в родительской форме mdi, однако я хочу состыковать эти дочерние формы mdi с размером родительского mdi, а также автоматически закрыть их, когда будет открыта другая дочерняя форма mdi, используя другое управление полосой меню.закрыть ребенка mdi C# с помощью главного меню управления полосой на родительском mdi
Например, у меня есть элемент меню, называемый Tile Model, и он вызывает/открывает специальную дочернюю форму при нажатии. Когда я нажал на другой элемент меню, скажем, называется Accounts, дочерняя форма, вызванная элементом меню модели Tile, должна автоматически закрыться и откроется дочерняя форма, вызванная элементом меню «Учетные записи».
Обратите внимание, что я установил стиль рамки формы как «none».
Что происходит с кодом, которым я являюсь сейчас, является то, что всякий раз, когда открывается дочерняя форма mdi, и когда она активна, открывается другая дочерняя форма, эти формы chilf просто пересекаются и кажутся беспорядочными.
здесь выдержка из моего кода.
общественный частичный класс Form1: Form { общественного Form1() { InitializeComponent(); }
private void manageTileModelToolStripMenuItem_Click(object sender, EventArgs e)
{
ManageTileModel ChildForm = new ManageTileModel();
ChildForm.MdiParent = this;
ChildForm.Show();
}
private void startInspectionToolStripMenuItem_Click(object sender, EventArgs e)
{
StartInspection ChildForm = new StartInspection();
ChildForm.MdiParent = this;
ChildForm.Show();
}
private void manageTestReportsToolStripMenuItem_Click(object sender, EventArgs e)
{
ManageTestReports ChildForm = new ManageTestReports();
ChildForm.MdiParent = this;
ChildForm.Show();
}
private void registerNewAccountToolStripMenuItem_Click(object sender, EventArgs e)
{
RegNewAccount ChildForm = new RegNewAccount();
ChildForm.MdiParent = this;
ChildForm.Show();
}
private void manageAccountsToolStripMenuItem_Click(object sender, EventArgs e)
{
ManageAccounts ChildForm = new ManageAccounts();
ChildForm.MdiParent = this;
ChildForm.Show();
}
private void inspectionToolStripMenuItem1_Click(object sender, EventArgs e)
{
GenHelpInspection ChildForm = new GenHelpInspection();
ChildForm.MdiParent = this;
ChildForm.Show();
}
private void tileModelToolStripMenuItem1_Click(object sender, EventArgs e)
{
GenHelpTileModel ChildForm = new GenHelpTileModel();
ChildForm.MdiParent = this;
ChildForm.Show();
}
private void accountsToolStripMenuItem1_Click(object sender, EventArgs e)
{
GenHelpAccounts ChildForm = new GenHelpAccounts();
ChildForm.MdiParent = this;
ChildForm.Show();
}
private void aboutToolStripMenuItem_Click(object sender, EventArgs e)
{
About ChildForm = new About();
ChildForm.MdiParent = this;
ChildForm.Show();
}
А ответ будет очень полезно, и я действительно ценю это. :) спасибо.