从 Wpf 中的资源从 CodeBehind 设置 FontFamily

Set FontFamily from CodeBehind from Resources in Wpf

你好,我想从代码隐藏中更改 fontfamily,但我的字体是资源样式 我怎样才能做到这一点?
这是我的字体词典

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <FontFamily x:Key="IRANSans">IRANSans, pack://application:,,,/PersianCalendar;component/Resources/Fonts/Fonts/#IRANSans</FontFamily>
</ResourceDictionary>

在xaml中我可以这样设置字体:

FontFamily="{StaticResources IranSans}"

但我不知道如何在代码隐藏中执行此操作,我想要这样的东西

pt.FontFamily = new FontFamily(TryFindResources("IranSans"));

您可以使用var fontFamily = this.Resources["IRANSans"];

您可以使用 Application.Current.Resources

访问应用程序资源

试试这个:

pt.FontFamily = Application.Current.Resources["IRANSans"] as FontFamily;