gpt4 book ai didi

c# - 在 Windows 窗体中隐藏和重新显示面板/组件

转载 作者:太空宇宙 更新时间:2023-11-03 15:47:48 26 4
gpt4 key购买 nike

Initial Panels Position - image

您好,我正在尝试执行以下行为的一键操作:

1) 当我第一次单击按钮 1 时,面板 1 将消失,面板 2 将获得父容器的大小。

2) 如果我重新单击该按钮,面板 1 将再次出现,面板 2 将重新调整。

然后问题出在第 2 步,当我重新单击按钮 1 时,面板 2 无法很好地调整大小并以某种方式获得固定值(检查: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/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com