我在 C# 中创建了一个 GUI,它应该如下所示:
在主屏幕上有两个按钮,Button1
单击时我不想打开新表单,form2.show();
但在保持相同表单时我想更改显示。
我通过隐藏 GUI 元素并根据需要显示其他元素来做到这一点。
它可以按我的意愿正常工作,但在设计器视图中Form1
我不得不创建凌乱的 GUI。
我的问题是这是否是良好的编程习惯?如果不是,那么实现这一目标的最佳或推荐方法是什么。
谢谢
我在 C# 中创建了一个 GUI,它应该如下所示:
在主屏幕上有两个按钮,Button1
单击时我不想打开新表单,form2.show();
但在保持相同表单时我想更改显示。
我通过隐藏 GUI 元素并根据需要显示其他元素来做到这一点。
它可以按我的意愿正常工作,但在设计器视图中Form1
我不得不创建凌乱的 GUI。
我的问题是这是否是良好的编程习惯?如果不是,那么实现这一目标的最佳或推荐方法是什么。
谢谢
您可能想考虑一个“Tabless”选项卡控件,这些天我倾向于在我的很多工作中使用它们,因为使用 win-forms 设计器和它们一起构建界面非常简单快捷。
class TablessTabControl : TabControl
{
protected override void WndProc(ref Message m)
{
// Hide tabs by trapping the TCM_ADJUSTRECT message
if (m.Msg == 0x1328 && !DesignMode) m.Result = (IntPtr)1;
else base.WndProc(ref m);
}
}
这将扩展选项卡控件并隐藏顶部的选项卡,然后您可以使用类似于以下的代码以编程方式更改选项卡:
tablessTabControl.SelectTab("tabName");
这不是我的原创作品,不久前我发现它在网上流传,不记得我在哪里看到的。无论如何,我希望这会有所帮助!
使用 TabControl 怎么样,您可以获得所有想要的“视图”,而不会出现混乱的可见 = true/false
shizzle。
您可以创建不同的子控件 View1 和 View2 并根据表单状态和按钮单击显示/隐藏每个控件。