Я пытаюсь "reset" форматировать в своем RichTextBox (WinForms, а не WPF). Раньше я использовал
richTextBox.Text = richTextBox.Text;
Однако это, похоже, внезапно провалило меня. Теперь, независимо от того, что я установил richTextBox.Text
, он сохраняет некоторое форматирование rtf.
Я пробовал
richTextBox.Rtf = richTextBox.Text;
Однако он жалуется на неправильный формат. Там должен быть лучший способ сделать это. (Конечно, выбирая всю вещь, затем сбросьте задний цвет, цвет переднего плана и шрифт, но это приводит к мерцанию, поскольку все это выбирается, а затем отменяется, а также медленнее и требует намного больше кода.) У кого-либо есть любая идея?
Изменить: Я получил это для работы:
string tempTxt = richTextBox.Text;
richTextBox.Clear();
richTextBox.Text = tempTxt;
Но должен быть лучший способ, верно?
Изменить 2: Чтобы быть ясным, я хочу удалить все форматирование, сохраняя текст. Похоже, что код в первом редактировании будет отправлен, если у кого-либо еще не будет более эффективного/лучшего способа кодирования.
Изменить 3:
richTextBox.Text = richTextBox.Text.ToString();
не работает, потому что он все еще не очищает все форматирование. Причина, по которой мне не нравится метод в первом Редактировании выше, заключается в том, что текстовое поле "мигает", когда оно очищает его, а затем повторно вводит текст. Похоже, что просто должен быть метод richTextBox.ResetFormatting() или каким-то образом получить доступ к тем же функциям, что и метод Clear() (без каламбура) делает какое-то форматирование reset в дополнение к простому очистке всех текст.
Подводя итог:
Есть ли способ (и если да, что это такое) в reset форматирование текста в RichTextBox без очистки текста, как в примере выше (потому что это вызывает нежелательное мигание)?