38

我已经使用选项卡控件创建了一个 Windows 窗体,但它有一个标题。我想隐藏它。我无法使用选项卡控件的任何属性来做到这一点。是否定义了任何属性来隐藏选项卡控件的选项卡标题而不通过代码?

4

5 回答 5

125

使用以下代码隐藏选项卡或在设计中设置这些属性。

    tabControl.Appearance = TabAppearance.FlatButtons;
    tabControl.ItemSize = new Size(0, 1);
    tabControl.SizeMode = TabSizeMode.Fixed;
于 2012-04-27T07:29:12.297 回答
4

您希望选项卡面板没有允许用户在它们之间切换的功能,所以我想您想创建几组单独的控件,一次向用户显示一个。您可以通过多种方式实现此目的(如果您认为适合您的情况,您可以选择其中一种):

  • 在 中使用多个Panel控件而不是多个选项卡TabControl,但是,在设计器中很难工作,因为所有控件都是可见的
  • 使用不同Form的 s 而不是制表符来保持布局部分分开。可以,但你可能不想使用多个Forms,所以这取决于具体情况。

最后,建议的解决方案

  • 将每组控件封装在一个UserControl. 这使您可以单独保留每个布局,因此您可以轻松地设计每个布局,而不会妨碍其他控件;)。处理每个布局的代码也将分开。然后只需在表单中拖动这些控件并使用适当地设置它们的可见性来显示您想要的。

如果这些建议都不适合您,请告诉我,以便我寻找其他可能的解决方案。

于 2012-04-26T18:57:30.890 回答
-1

就像你想的那样简单,你只需将面板的窗口拖到上面,这样就会在表单之外。

于 2015-12-16T08:32:00.860 回答
-1

使用 DrawMode: OwnerDrawFixed 将隐藏 TabPage 标题文本DrawMode : OwnerDrawFixed

于 2017-11-27T00:38:32.813 回答
-2

实现相同(或类似)的另一种方法是:您可以从 TabControl.TabPages 集合中删除选项卡,然后添加要显示的选项卡。

在表单初始化期间,我删除了选项卡(因此在设计器中我可以轻松地管理它们)并在一些控制事件中(作为按钮单击)我显示用户必须看到的选项卡。

像这样的东西:

// During form load:
ctrTab.TabPages.Clear();

// ...... 

// During button click or some other event:
if(rbSend.Checked)
    ctrTab.TabPages.Add(pgSend);
else
    ctrTab.TabPages.Add(pgReceive);

这样,用户仍然可以看到标题选项卡,但就像控件组的标题一样,他无法更改/切换当前活动选项卡。

于 2016-03-11T14:56:27.627 回答