【问题标题】:What technique will I use if i want to change this panel when I click a button in VB如果我想在 VB 中单击按钮时更改此面板,我将使用什么技术
【发布时间】:2014-06-21 21:39:20
【问题描述】:

我只是在脑海中。而且我无法解释,所以就这样吧。

只使用一种形式的系统?

它有一个左右两个面板。 左边是由按钮组成 然后右键与按钮相关联,并将更改是否单击哪个按钮。 有什么想法吗?

【问题讨论】:

  • 这就是 tabcontrols 的基本用途......
  • 你在说什么用户界面技术? WinForms、WPF、ASP.NET?
  • 嗨史蒂夫,我正在使用 Windowsform

标签: vb.net system panel


【解决方案1】:

您可以有多个面板,一个在另一个之上。更改它们的可见性,具体取决于您在特定时刻需要哪一个。

选项 #2 将使用 vertical tab control(或 tab strip - 在那里查看另一个答案)。

【讨论】:

    【解决方案2】:

    我的偏好是通过自定义控件而不是面板来执行此操作......但面板也可以工作。

    有很多方法可以做到这一点:

    • 让所有控件相互层叠,然后将 Visible 属性设置为 false 用于您不关心的控件/面板,并将其设置为 true 用于您关心的控件/面板
    • 将您不关心的控件移出可见区域
    • 从 Form 的控件集合中完全删除/添加控件/面板
    • 我认为您还可以使用 TabControl 将选项卡放在左侧,并使用一些看起来更像按钮的格式,这样您就可以处理您想要的内容,而无需编写任何代码来切换布局

    其中任何一个都可以工作。无论您使用哪个选项,对于控制布局和平滑过渡,我都有两个建议。

    1. 在进行任何更改之前致电SuspendLayout(),然后在完成后致电ResumeLayout()。这将有助于避免卡顿或部分呈现的表单。
    2. 查看 TableLayoutPanel 控件。此控件将允许您排列顶级面板,以便它们可以按比例调整大小。如果您还停靠各个面板,则可以快速构建程序,以便正确调整大小。

    【讨论】:

    • 酷,我想要你所说的 SuspendLayout()。但是,当我将鼠标悬停在按钮或单击时,我可以问该怎么做吗?会有影响吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-25
    • 1970-01-01
    • 2020-05-25
    • 1970-01-01
    • 1970-01-01
    • 2016-09-28
    • 2019-09-22
    相关资源
    最近更新 更多