如何更改WPF中的排版默认值?

时间:2010-06-23 12:41:19

标签: .net wpf .net-4.0 wpf-4.0 opentype

当WPF应用程序启动时,它会应用一些标准设置来确定文本和数字的外观。有没有办法以编程方式更改这些默认设置?

例如,FontNumeralAlignment documentation on MSDN表示值“Normal”表示“使用默认数字对齐”。在我的系统上,这似乎默认为FontNumeralAlignment.Proportional,我希望它改为FontNumeralAlignment.Tabular。

背景:在Windows 7(see bug report on Microsoft Connect)上打破了WPF 4.0 OpenType支持,并且无法在仅包含数字和标点符号的运行中更改数字对齐。如果我至少可以将应用程序默认值更改为表格,衬里数字,我会有一个解决方法。

1 个答案:

答案 0 :(得分:1)

我自己还没有尝试过,但是重写默认的DependencyProperty元数据可能是一个解决方案吗?

这样的事情应该有效:

public static class Overrides 
{
   static Overrides()
   {
       Typography.NumeralAlignmentProperty.OverrideMetadata(typeof(Typography), new System.Windows.PropertyMetadata(FontNumeralAlignment.Tabular));
   }
}