¿Desea restablecer RTF en RichTextBox?

Estoy tratando de "restablecer" el formato en mi RichTextBox (WinForms, no WPF). Anteriormente estaba usando

richTextBox.Text = richTextBox.Text;

Sin embargo, me parece que de repente me ha fallado. Ahora no importa lo que establezcarichTextBox.Text Para, conserva parte del formato rtf.

He intentado

richTextBox.Rtf = richTextBox.Text;

Sin embargo, eso se queja de un formato incorrecto. Tiene que haber una mejor manera de hacer esto. (Por supuesto, seleccionando la cosa completa, luego se restablece el color de fondo, el color anterior y la fuente, pero eso da como resultado un parpadeo cuando se selecciona y se deselecciona la cosa completa, además de que es más lento y requiere mucho más código). ¿alguna idea?

Edit: He conseguido que esto funcione:

string tempTxt = richTextBox.Text;
richTextBox.Clear();
richTextBox.Text = tempTxt;

Pero tiene que haber una mejor manera, ¿verdad?

Edición 2: para que quede claro, deseo eliminar todo el formato y conservar el texto. Parece que el código en la primera edición se enviará, a menos que alguien más tenga una forma de codificación más eficiente / mejor.

Edición 3:

richTextBox.Text = richTextBox.Text.ToString();

No parece funcionar porque todavía no borra todo el formato. La razón por la que no me gusta el método en la primera Edición anterior es que hace que el cuadro de texto "destelle" cuando se borra y luego vuelve a ingresar el texto. Parece que simplemente debería haber un método richTextBox.ResetFormatting (), o alguna forma de acceder a la misma funcionalidad, ya que el método Clear () claramente (sin juego de palabras) hace algún tipo de restablecimiento de formato además de simplemente borrar todo el texto .

Para resumir:

¿Hay alguna forma (y en caso afirmativo, de qué se trata) para restablecer el formato del texto en un RichTextBox sin borrar el texto como se muestra en el ejemplo anterior (porque eso produce un parpadeo no deseado)?

Respuestas a la pregunta(10)

Su respuesta a la pregunta