VB.NET – RichTextBox – применить форматирование к выделенному тексту
-
01-07-2019 - |
Вопрос
у меня есть Ричтекстбокс контроль над моей формой.У меня также есть эта кнопка с надписью Смелый, что я хочу, если кто-то выделит текст в Ричтекстбокс, затем нажимает кнопку выделенный текст станет жирным. Есть ли способ сделать это?Простая повседневная задача для конечных пользователей.Спасибо.
Решение
Вариант вышеизложенного, в котором учитывается включение/выключение жирного шрифта в зависимости от информации о шрифте выбранного в данный момент текста:
With Me.rtbDoc
If .SelectionFont IsNot Nothing Then
Dim currentFont As System.Drawing.Font = .SelectionFont
Dim newFontStyle As System.Drawing.FontStyle
If .SelectionFont.Bold = True Then
newFontStyle = currentFont.Style - Drawing.FontStyle.Bold
Else
newFontStyle = currentFont.Style + Drawing.FontStyle.Bold
End If
.SelectionFont = New Drawing.Font(currentFont.FontFamily, currentFont.Size, newFontStyle)
End If
End With
Возможно, его нужно немного подчистить, я взял это из старого проекта.
Другие советы
Вы захотите использовать свойство .SelectionFont RichTextBox и назначить ему объект Font с нужными стилями.
Пример. Этот код будет в обработчике событий кнопки:
Dim bfont As New Font(RichTextBoxFoo.Font, FontStyle.Bold)
RichTextBoxFoo.SelectionFont = bfont
Не связан с StackOverflow