2012-12-28 26 views
2

每當我在WPF應用程序中使用AeroGlass時,我都會對ClearType產生相當奇怪的行爲。我發現下面一行將我的字體渲染回灰階:使用AeroGlass時WPF中的ClearType

mainWindowSrc.CompositionTarget.BackgroundColor = Colors.Transparent; 

拿回來用AeroGlass工作,我必須包含文本設置這些.NET 4.0特性的每一個控制:

RenderOptions.ClearTypeHint="Enabled" TextOptions.TextFormattingMode="Display" TextOptions.TextRenderingMode="ClearType"

然後,它看起來是這樣的:

grey-scale on the left, cleartype on the right

有T A方式沒有將這些屬性設置爲窗口上的每個控件都能達到相同的效果?

謝謝。

回答

3

您可以在MainWindows構造函數中全局設置它。

事情是這樣的:

RenderOptions.ClearTypeHintProperty.OverrideMetadata(typeof(FrameworkElement), new FrameworkPropertyMetadata { DefaultValue = ClearTypeHint.Enabled }); 
TextOptions.TextFormattingModeProperty.OverrideMetadata(typeof(FrameworkElement), new FrameworkPropertyMetadata { DefaultValue = TextFormattingMode.Display }); 
+0

謝謝你,它的工作!但是這個代碼可以移動到別的地方嗎?我想保留在我的AeroGlass類中。 – Lucas

相關問題