Изменить стиль шрифта с помощью флажка
Привет! Я хочу изменить текстовый шрифт текста в текстовом поле жирным шрифтом, курсивом, подчеркиванием. У меня есть следующий код. Но если я нажму другой флажок, первое изменение флажка исчезнет. Могу ли я знать, как это исправить
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
richTextBox1.Font = new Font(richTextBox1.Font, FontStyle.Bold);
}
private void checkBox2_CheckedChanged(object sender, EventArgs e)
{
richTextBox1.Font = new Font(richTextBox1.Font, FontStyle.Italic);
}
private void checkBox3_CheckedChanged(object sender, EventArgs e)
{
richTextBox1.Font = new Font(richTextBox1.Font, FontStyle.Underline);
}
private void checkBox4_CheckedChanged(object sender, EventArgs e)
{
richTextBox1.Font = new Font(richTextBox1.Font, FontStyle.Regular);
}
1 ответ
Решение
Вы можете попробовать вызвать такой метод из checkBox_CheckedChanged
private void UpdateFont()
{
System.Drawing.FontStyle style = System.Drawing.FontStyle.Regular;
if (checkBox1.Checked) style |= System.Drawing.FontStyle.Bold;
if (checkBox2.Checked) style |= System.Drawing.FontStyle.Italic;
if (checkBox3.Checked) style |= System.Drawing.FontStyle.Underline;
textBox1.Font = new Font(textBox1.Font, style);
}