Стили шрифтов из переменных - PullRequest
0 голосов
/ 09 сентября 2018

Добрый день,

У меня есть приложение c #, которое читает стили шрифтов из файла настроек в следующем формате.

string font_style = "Bold, Italic, Underline, Strikeout";

Я хочу изменить стиль шрифта richtextbox в соответствии с настройками. Если существует несколько стилей шрифтов, таких как Bold, Underline и Italic, стиль шрифта richtextbox должен измениться на этот. Из приведенного ниже кода, он только меняет стиль шрифта на последний из массива, который является «зачеркнутым», но не меняет его на полужирный, курсив и подчеркивание. В любом случае, я могу решить эту проблему, пожалуйста?

string font_style = "Bold, Italic, Underline, Strikeout";
string[] fontStrings = font_style.Split(',');

for (int i = 0; fontStrings.Length > i; i++)
{
var fntTab = new Font(FontFamily.GenericSansSerif, 18.0F, FontStyle)Enum.Parse(typeof(FontStyle), fontStrings[i], true));

this.richTextBox1.Font = fntTab;
}

1 Ответ

0 голосов
/ 09 сентября 2018

Вы должны использовать or, например, вот так:

 FontStyle res = FontStyle.Regular;
 for (int i = 0; fontStrings.Length > i; i++)
 {
      res = res | (FontStyle)Enum.Parse(typeof(FontStyle), fontStrings[i], true);
 }

 richTextBox1.Font = new Font(FontFamily.GenericSansSerif, 18.0F, res);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...