привет, я хочу изменить семейство шрифтов из кода программной части, но мой шрифт - это ресурсный стиль
Как я могу это сделать?
это мой словарь шрифтов
<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;
Относительный путь для семейства шрифтов приведет к утечке памяти. github.com/MaterialDesignInXAML/MaterialDesignInXamlToolkit/… . stackoverflow.com/questions/31452443/…