我有一个主菜单,当我点击其中一个按钮时,菜单面板应该隐藏,点击的按钮应该打开。这适用于一个按钮,但对于我的第二个按钮它不适用。好吧,它显示了我猜的小组,但它是空的,即使我在面板中有东西。
代码很简单,所以我看不出问题出在哪里
public Form1()
{
InitializeComponent();
menu_botStrip.Text = DateTime.Now.ToString("dd/mm/yyyy h:mm tt");
panel_startMenu.Show();
panel_informationService.Hide();
panel_customerManagement.Hide();
}
private void btn_informationService_Click(object sender, EventArgs e)
{
panel_startMenu.Hide();
panel_informationService.Show();
}
private void btn_customerManagement_Click(object sender, EventArgs e)
{
panel_startMenu.Hide();
panel_customerManagement.Show();
}
答案 0 :(得分:25)
确保没有将第二个面板放在第一个面板内。如果您从工具箱中拖动面板,则很有可能出现这种情况。
要确保打开Document Outline
窗口(View-> Other Windows-> Document Outline),请查看面板之间的关系。确保它们不相互包含在一起。它们必须处于相同的嵌套水平。
如果是这样的话:
然后选择内部面板并按下窗口上方的左箭头按钮。那应该是:
这是正确的。
答案 1 :(得分:0)
不应该再次隐藏第一个面板(信息服务)?如果两者同时显示,也许有一个丑陋的叠加......
private void btn_informationService_Click(object sender, EventArgs e)
{
panel_startMenu.Hide();
panel_customerManagement.Hide();
panel_informationService.Show();
}
private void btn_customerManagement_Click(object sender, EventArgs e)
{
panel_startMenu.Hide();
panel_informationService.Hide();
panel_customerManagement.Show();
}
答案 2 :(得分:-1)
我同意@ MD.Unicorn,您必须小心在表单上排序这些面板(图层上下文)。这意味着如果您的面板包含另一个或多个面板 - 隐藏特定父级后,您将隐藏所有子组件。