С# Как изменить шрифт метки
Форма с меткой и кнопкой "Параметры". Нажав на кнопку, открывается новая форма с двумя переключателями "Font1" и "Font2" и двумя кнопками "Применить" и "Отмена". Выбрав один из переключателей и нажав "Применить" , метка в первой форме изменит шрифт. Проблема заключается в том, как изменить шрифт, например, от Tahoma до Arial или к любой другой грани шрифта метки.
Код формы для кнопки "Применить" , который, если был щелкнут, вернет диалоговое окно result.ok == true и изменит шрифт метки в первой форме:
private void btnApply_Click(object sender, EventArgs e)
{
if (radioFont1.Checked)
{
mainForm.lblName.Font.Name = "Arial"; 'wrong attempt
}
this.DialogResult = DialogResult.OK;
}
Объявление метки на первой форме, чтобы она была видна второй форме:
public static Label lblName = new Label();
...
private void mainForm_Load(object sender, EventArgs e)
{
lblName = lblBarName;
}
Ответы
Ответ 1
Font.Name
, Font.XYZProperty
и т.д. читаются только как Font
- неизменяемый объект, поэтому вам нужно указать новый объект Font
для замены это:
mainForm.lblName.Font = new Font("Arial", mainForm.lblName.Font.Size);
Проверьте конструктор класса Font
для дополнительных параметров.
Ответ 2
Вы не можете изменить шрифт после его создания, поэтому вам нужно создать новый:
mainForm.lblName.Font = new Font("Arial", mainForm.lblName.Font.Size);
Ответ 3
Вам нужно создать новый шрифт
mainForm.lblName.Font = new Font("Arial", mainForm.lblName.Font.Size);