#c#
#c#
Вопрос:
Я загрузил Material Skin
с помощью NuGet
.
Затем я сделал более красивый дизайн формы, используя material skin
.
Однако в моем проекте есть проблема, заключающаяся в том, что шрифт не меняется.
Например, если изменить размер шрифта, семейство шрифтов в свойствах, это применяется в режиме конструктора, но при запуске кода изменения в форме не применяются.
Это мой исходный код:
using MaterialSkin.Controls;
using MaterialSkin;
public partial class Main : MaterialForm
{
public Main()
{
InitializeComponent();
var materialSkinManager = MaterialSkinManager.Instance;
materialSkinManager.AddFormToManage(this);
materialSkinManager.Theme = MaterialSkinManager.Themes.LIGHT;
materialSkinManager.ColorScheme = new ColorScheme(Primary.BlueGrey800, Primary.BlueGrey900, Primary.BlueGrey500, Accent.LightBlue200, TextShade.WHITE);
this.Label1.font = new Font("Arial", 30f, FontStyle.Bold);
this.Label2.font = new Font("Arial", 18f, FontStyle.Bold);
}
}
Мой material label(Label 1, Label 2)
шрифт не меняется безоговорочно в Roboto
шрифте.
Однако он может изменять шрифт в System.Windows.Forms.label
объекте.
Я не могу понять эту проблему.
Пожалуйста, помогите мне.
Ответ №1:
Шрифт объекта обложки материала устанавливается в materialSkinManager.
Таким образом, я думаю, что невозможно изменить шрифт в объекте обложки материала напрямую.
однако, если вы хотите заменить все шрифты, вы можете попробовать этот код:
var materialSkinManager = MaterialSkinManager.Instance;
materialSkinManager.AddFormToManage(this);
materialSkinManager.Theme = MaterialSkinManager.Themes.LIGHT;
materialSkinManager.ColorScheme = new ColorScheme(Primary.BlueGrey800, Primary.BlueGrey900, Primary.BlueGrey500, Accent.LightBlue200, TextShade.WHITE);
// Code added by me
materialSkinManager.ROBOTO_REGULAR_11 = new Font("Arial", 30f, FontStyle.Regular);
materialSkinManager.ROBOTO_MEDIUM_12 = new Font("Arial", 30f, FontStyle.Bold);
materialSkinManager.ROBOTO_MEDIUM_11 = new Font("Arial", 30f, FontStyle.Regular);
materialSkinManager.ROBOTO_MEDIUM_10 = new Font("Arial", 30f, FontStyle.Bold);
Я проверил, что этот код c # может использоваться с MaterialSkin 0.2.2
Спасибо.
Комментарии:
1. но он изменяет только размер шрифта, но не виджет, который даже настроен на автоматический размер