我有两个面板在splitviewcontainer的一侧占据相同的空间。 我想动态显示或隐藏一个面板或另一个面板。
到目前为止,我尝试过的方法是:
if (treeView1.SelectedNode.Name.Contains("cat")) {
menuItemPanel.SendToBack();
foreach (Control control in menuItemPanel.Controls)
control.SendToBack();
menuItemPanel.Visible = false;
categoryPanel.Hide();
categoryPanel.Visible = true;
categoryPanel.BringToFront();
foreach (Control control in categoryPanel.Controls)
control.BringToFront();
categoryPanel.Show();
// ...
}
和其他情况相反。 这些似乎都不起作用。这是在选择类别节点时显示categoryPanel,但是当选择menuItem节点时,屏幕显示空白。
我做错了什么?
答案 0 :(得分:2)
代码没有多大意义,重新排序面板中的控件并不是你想要做的。还听起来else子句中的代码失败了,你没有发布的代码。这样做(猜测):
bool categorySelected = treeView1.SelectedNode.Name.Contains("cat");
menuItemPanel.Visible = !categorySelected;
categoryPanel.Visible = categorySelected;
答案 1 :(得分:0)
试试这个
if (treeView1.SelectedNode.Name.Contains("cat"))
{
menuItemPanel.Visible = false;
categoryPanel.Visible = true;
}