Initial Panels Position - image
嗨,我正在尝试执行以下操作的一个按钮动作:
1)当我第一次单击button1时,panel1将消失,panel2将获得Parent容器的大小。
2)如果我重新单击按钮,则panel1将再次出现,panel2将重新调整大小。
然后问题出在步骤2上,当我重新单击button1时,panel2的大小调整得不好,并以某种方式获得了固定值(检查:problem - image)。
我正在尝试这样的事情:
private void button1_Click(object sender, EventArgs e){
if (panel1.Visible){
panel1.Visible = false;
panel1.Enabled = false;
panel2.Dock = DockStyle.Fill;
}
else{
panel1.Visible = true;
panel1.Enabled = true;
panel2.Dock = DockStyle.None;
panel2.Anchor = ((AnchorStyles.Top | AnchorStyles.Bottom) | AnchorStyles.Left) | AnchorStyles.Right;
}
}
PS:检查图像链接,可能有助于了解问题。我的项目中的panel2也是WebBrowser组件。
谢谢。
最佳答案
实际上,您可能应该使用的控件是SplitContainer控件。
您可以按原样使用SplitContainer的Panel1作为您的第一个面板,在SplitContainer的Panel2中,可以将WebBrowser控件停靠在其中。
如果面板不应该由用户调整大小,则进行设置
splitContainer1.IsSplitterFixed = true;
要隐藏第一个面板,您需要调用的是:
splitContainer1.Panel1Collapsed = true;
您显然将其设置为false可以将其恢复。
关于c# - 隐藏和重新显示Windows窗体中的面板/组件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27350285/