我的WPF应用程序中有一个DataGrid。
我希望第3列使用特定的字体类型(因此我可以在那里显示一些符号)
<Datagrid
...
>
<DataGrid.Columns>
<DataGridTextColumn x:Name="c1" Binding="{Binding Path=C1}" />
<DataGridTextColumn x:Name="c2" Binding="{Binding Path=C2}" />
<DataGridTextColumn x:Name="c3" Binding="{Binding Path=C3}" CellStyle="{StaticResource MyStyle}"/>
</DataGrid.Columns>
</Datagrid>
MyStyle位于控制资源中:
<UserControl.Resources>
<Style x:Key="MyStyle">
<Setter Property="TextElement.FontFamily" Value="Resources/#MyFont" />
</Style>
...
</USerControl.Resources>
我在做错了什么?我在Resources文件夹中有MyFont.ttf文件。在网格中,所有列都使用相同的字体。
答案 0 :(得分:0)
修复路径时,会导致内存泄漏。 使用带字体的相对路径会产生内存泄漏。 你需要一条绝对的道路。 安装字体更简单。 WPF TextBlock memory leak when using Font
如果你不能这样做,那么将它传递给appdata,计算路径,然后添加指向该路径的资源。 如果您的路径不是以驱动器号开头,那么它几乎肯定是相对的。