Метод для форматирования текста в C#
Все. Я пишу программу на C# .NET. У меня есть richtextBox в моей форме (Windows Form). Я открываю текстовый файл и помещаю текст в richtextBox. Мне нужно отформатировать выделенный текст с помощью FontDialog. Но изменился весь текст, а не выделен. Какой метод можно применить, чтобы FontDialog изменил только выделенный текст?
Мой код:
if (fontDialog1.ShowDialog() != DialogResult.Cancel)
{
if (richTextBox1.SelectedText.Length > 0)
{
richTextBox1.Font = fontDialog1.Font;
richTextBox1.ForeColor = fontDialog1.Color;
}
Благодарю.
3 ответа
Вам нужно использовать свойства SelectionFont & SelectionColor richtextBox: потому что используемые вами свойства применяются ко всему содержимому элемента управления
if (fontDialog1.ShowDialog() != DialogResult.Cancel)
{
if (richTextBox1.SelectedText.Length > 0)
{
richTextBox1.SelectionFont = fontDialog1.Font;
richTextBox1.SelectionColor = fontDialog1.Color;
}
Пользователь RichTextBox.SelectionFont свойство
if (fontDialog1.ShowDialog() != DialogResult.Cancel)
{
if (richTextBox1.SelectedText.Length > 0)
{
richTextBox1.SelectionFont = fontDialog1.Font;
richTextBox1.SelectionColor = fontDialog1.Color;
}
Проверьте http://msdn.microsoft.com/en-us/library/system.windows.forms.richtextbox_members%28v=vs.85%29.aspx для списка всех членов RichTextBox
Документация дляSelectedText
дает хорошую помощь
richTextBox1.SelectionFont = fontDialog1.Font
richTextBox1.SelectionColor = fontDialog1.Color;