如何更改TabControl的边框颜色和大小?

时间:2011-02-22 12:05:12

标签: .net vb.net winforms tabcontrol

如何更改TabControl的边框大小/样式/颜色,使其与表单的背景颜色融为一体?

我无法在Visual Studio中找到任何属性。这可能吗?

3 个答案:

答案 0 :(得分:6)

预计TabControl不会放在自定义背景上。您在边缘看到的是用于3D控件的标准颜色。如果您没有更改表单的背景颜色,通常不会注意到。默认情况下,它们的颜色相同。

我不知道有什么好方法可以解决这个问题。 TabControl没有公开很多内置选项来自定义其外观。您将需要自己绘制并自己绘制一个自定义颜色。

访问this page了解一些不同的选项和示例代码。我怀疑Completely OwnerDraw TabControl是你需要的;使用提供的代码并根据自己的喜好进行自定义。要感谢别人已经为你完成了所有工作,因为自己实现这一点并非易事。

另请注意,将DrawMode更改为“OwnerDrawFixed”将禁用主题。您的控件看起来像是直接来自Windows 95,而不是使用Luna或Aero主题样式绘制。如果您完全自定义它的绘制方式,那就没什么大不了了,但如果您想要的话就是改变背景颜色,那么后面会感到痛苦。

答案 1 :(得分:0)

如果您要隐藏边框并将其与表单的背景色混合, 将TabControl放入“ Panel”控件之类的容器中,并使TabConrol的大小大于Panel控件的大小,但这也将覆盖Tabs Buttons,对于此问题,您可以为每个选项卡添加按钮并设置按钮的单击事件以更改TabControl的SelectedTab属性。 注意:您可以将TabControl保留在可以在设计时更改标签的位置,然后在窗体的Load事件上添加以下小的代码以在运行时隐藏Tabs按钮:

Private Sub Form_Load(sender As Object, e As EventArgs) Handles Me.Load

TabControl.ItemSize = New Size(0, 1)
TabControl.SizeMode = TabSizeMode.Fixed

End Sub

答案 2 :(得分:-1)

Me.TabPage1.BackColor = Color.Blue

试试这个,对你有帮助。