我正在开发 Windows 应用程序。我有一个表单中的菜单条,我想问一下,我可以有一个面板,它可以在特定单击 menustripitem 时加载新表单。
前任:
File Data
ABC Hello
XYZ Bye
这是我的菜单栏。点击 ABC 我不想使用不同的表单,我可以使用面板在同一个表单上做某事(无论我想做什么)。
谢谢
我正在开发 Windows 应用程序。我有一个表单中的菜单条,我想问一下,我可以有一个面板,它可以在特定单击 menustripitem 时加载新表单。
前任:
File Data
ABC Hello
XYZ Bye
这是我的菜单栏。点击 ABC 我不想使用不同的表单,我可以使用面板在同一个表单上做某事(无论我想做什么)。
谢谢
我想我也有同样的问题。
但我找到了答案
首先,您必须配置表单:
myForm.FormBorderStyle = FormBorderStyle.None;
然后,操纵动作:
Form1 myForm = new Form1();
myForm.TopLevel = false;
myForm.AutoScroll = true;
frmMain.Panel2.Controls.Add(myForm);
myForm.Show();
希望能帮到你。拥抱:D
private void pbxpurchase_Click(object sender, EventArgs e)
{
contentpnl.Controls.Clear();//contentpnl is the panelname
purchasebook purchasebk = new purchasebook();//purchasebook is a formname
purchasebk.TopLevel = false;
purchasebk.AutoScroll = true;
contentpnl.Controls.Add(purchasebk);
purchasebk.Dock = DockStyle.Fill;
purchasebk.Show();
}
试试这个 100% 测试
如果将目标表单的全部内容放入 UserControl 中,则可以将面板添加到主表单并将 UserControl 放置在该面板上。
您仍然可以选择通过创建一个空表单并将相同的 UserControl 也放置在该表单上来显示单独的表单。
正如 Int3 ὰ 已经指出的那样,您可以改用 MDI 表单。但是,如果您想使用可停靠面板,则 UserControl 将是您的最佳选择。
在表单上添加两个面板,同时只有一个可见。然后,在您的菜单上添加两个事件:
private void ABCToolStripMenuItem_Click(object sender, EventArgs e) {
panelABC.Visible = true;
panelXYZ.Visible = false;
}
private void XYZToolStripMenuItem_Click(object sender, EventArgs e) {
panelABC.Visible = false;
panelXYZ.Visible = true;
}