更改字体时,TabControl选项卡标题会resize

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

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

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

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

选项卡控件上有一个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);