C# 使标签控件文本看起来与VS窗体设计器中的一样好
在VS2008中,我为C#dll设计了一个表单。dll是一个稍旧的应用程序的插件(约2005年):让我们称它为“OldApp”。在VS form designer中,表单上标签控件中的文本被很好地呈现:抗锯齿和正确的字距。但是当我在OldApp中打开这个表单时(C#dll作为插件运行),Label控件中的文本看起来很难看。它清晰可辨,但字距很差:字母之间的间距更大,而且看起来偏移量很随机。我能做些什么使OldApp中的文本标签看起来和VS的表单设计器中的一样好?我怀疑具体的字体是否重要,但它是Arial,7.2 pt(VS2008默认)。我试着在Program.cs(见下文)中使用两个相关的行,但没有效果C# 使标签控件文本看起来与VS窗体设计器中的一样好,c#,visual-studio-2008,fonts,textbox,C#,Visual Studio 2008,Fonts,Textbox,在VS2008中,我为C#dll设计了一个表单。dll是一个稍旧的应用程序的插件(约2005年):让我们称它为“OldApp”。在VS form designer中,表单上标签控件中的文本被很好地呈现:抗锯齿和正确的字距。但是当我在OldApp中打开这个表单时(C#dll作为插件运行),Label控件中的文本看起来很难看。它清晰可辨,但字距很差:字母之间的间距更大,而且看起来偏移量很随机。我能做些什么使OldApp中的文本标签看起来和VS的表单设计器中的一样好?我怀疑具体的字体是否重要,但它是A
Application.EnableVisualStyles(); // tried using it and commenting it out
Application.SetCompatibleTextRenderingDefault(true); // tried true and false
我在MSDN论坛上发现了一个类似的问题,其中提到在EnableVisualStyles()方法之后添加以下行
在较旧的.NET版本中似乎有一个bug…您使用的是哪个版本?经过调查,我有一些发现,所以我只回答我自己的问题:
您是否在与Visual Studio相同的计算机上执行旧应用程序?我询问的原因是,应用程序的格式可能取决于操作系统。Windows 7上运行的某些内容在Windows XP计算机上可能看起来有所不同。您是否尝试增大字体大小?尝试将其设置为12pt,看看您是否仍然遇到此问题。尝试过,但没有任何区别。
Application.DoEvents()