更改字体时,TabControl选项卡标题会调整大小

时间:2008-12-08 10:45:32

标签: c# winforms tabcontrol

我有一个应用程序在Vista中运行时将每个控件的字体更改为SegoeUI。它的工作正常,除了标签页(从一个标签切换到另一个标签时单击的按钮)。

标签页标题不会垂直增长以适应更大的字体大小,它们始终保持相同的高度。

是否有允许TabControl处理此属性的属性? (我尝试过AutoSizeMode,但它只处理标签的宽度)

如果没有,以编程方式根据字体大小调整标签页标题大小的最佳方法是什么?

1 个答案:

答案 0 :(得分:4)

选项卡控件上有一个ItemSize属性,您可以设置该属性来更改选项卡本身的大小。另外,为了帮助您获取文本的大小,Graphics对象上有一个MeasureString()方法,它将返回一个具有给定文本大小的SizeF结构。这可以帮助您确定是否需要更改ItemSize属性。一些粗略的代码:

            Graphics g = this.tabControl1.TabPages[0].CreateGraphics();
            SizeF s = g.MeasureString(this.tabControl1.TabPages[0].Text, this.tabControl1.TabPages[0].Font);