VB.NET中,如何设置.NET类库表单的兼容文本渲染默认值?

2026-05-06 13:001阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计357个文字,预计阅读时间需要2分钟。

VB.NET中,如何设置.NET类库表单的兼容文本渲染默认值?

我有一个包含调用表单的com类.net库。我想使用SetCompatibleTextRenderingDefault(false)来确保表单字体看起来正确。如果在类构造函数中运行该命令,则会出现以下错误:必须在应用程序中创建。

我有一个带有调用表单的com类的.net类库.
我想要SetCompatibleTextRenderingDefault(false)以确保表单字体看起来不错.

如果我在类构造函数中运行该命令,则会收到以下错误:
必须在应用程序中创建第一个IWin32Window对象之前调用SetCompatibleTextRenderingDefault.

我可以/应该在哪里运行?当然没有比新的更早的地方了!

预先感谢

乔恩

编辑1:为了澄清,我从.net测试工具启动类时遇到此错误,如果我从VB6应用程序调用它然后我只是得到“自动化错误”

Edit2:从vb6应用程序调用时,我不能在com类中使用SetCompatibleTextRenderingDefault的答案吗?也许这是需要调用此方法的“父”应用程序,因此vb6应用程序不能?

VB.NET中,如何设置.NET类库表单的兼容文本渲染默认值?

编辑3:也许我以错误的方式问这个问题! – 也许问题是:如何在从vb6 app调用的.net类库表单中使字体看起来很好?

一种可能的解决方法是在表单构造函数中的所有按钮和标签上手动设置属性:

public Form1() { InitializeComponent(); DisableCompatibleTextRendering(this); } private static void DisableCompatibleTextRendering(Control c) { var button = (c as ButtonBase); var label = (c as Label); if (button != null) { button.UseCompatibleTextRendering = false; } if (label != null) { label.UseCompatibleTextRendering = false; } foreach (var child in c.Controls.Cast<Control>()) { DisableCompatibleTextRendering(child); } }

标签:

本文共计357个文字,预计阅读时间需要2分钟。

VB.NET中,如何设置.NET类库表单的兼容文本渲染默认值?

我有一个包含调用表单的com类.net库。我想使用SetCompatibleTextRenderingDefault(false)来确保表单字体看起来正确。如果在类构造函数中运行该命令,则会出现以下错误:必须在应用程序中创建。

我有一个带有调用表单的com类的.net类库.
我想要SetCompatibleTextRenderingDefault(false)以确保表单字体看起来不错.

如果我在类构造函数中运行该命令,则会收到以下错误:
必须在应用程序中创建第一个IWin32Window对象之前调用SetCompatibleTextRenderingDefault.

我可以/应该在哪里运行?当然没有比新的更早的地方了!

预先感谢

乔恩

编辑1:为了澄清,我从.net测试工具启动类时遇到此错误,如果我从VB6应用程序调用它然后我只是得到“自动化错误”

Edit2:从vb6应用程序调用时,我不能在com类中使用SetCompatibleTextRenderingDefault的答案吗?也许这是需要调用此方法的“父”应用程序,因此vb6应用程序不能?

VB.NET中,如何设置.NET类库表单的兼容文本渲染默认值?

编辑3:也许我以错误的方式问这个问题! – 也许问题是:如何在从vb6 app调用的.net类库表单中使字体看起来很好?

一种可能的解决方法是在表单构造函数中的所有按钮和标签上手动设置属性:

public Form1() { InitializeComponent(); DisableCompatibleTextRendering(this); } private static void DisableCompatibleTextRendering(Control c) { var button = (c as ButtonBase); var label = (c as Label); if (button != null) { button.UseCompatibleTextRendering = false; } if (label != null) { label.UseCompatibleTextRendering = false; } foreach (var child in c.Controls.Cast<Control>()) { DisableCompatibleTextRendering(child); } }

标签: