Est-ce que quelqu'un sait comment contrôler le mode d'insertion d'un fichier RTF RichTextBox. Je veux forcer le RichTextBox à toujours être en mode remplacement plutôt qu'insérer.Comment forcer le mode insertion dans un fichier WPF RichTextBox
1
A
Répondre
0
Malheureusement, il ne semble pas y avoir de moyen documenté de le faire. La seule façon que je connais est d'utiliser la réflexion, comme ci-dessous, mais cette technique accède au fonctionnement interne de la RichTextBox. Cela fonctionne dans les versions actuelles de WPF mais il n'y a aucune garantie qu'il continuera à fonctionner à l'avenir, alors utilisez-le à vos risques et périls.
PropertyInfo textEditorPropertyInfo = typeof(RichTextBox).GetProperty("TextEditor", BindingFlags.NonPublic | BindingFlags.Instance);
if (textEditorPropertyInfo == null)
throw new NotSupportedException("SetOverwriteable not support on this platform");
object textEditor = textEditorPropertyInfo.GetValue(this, null);
PropertyInfo overtypeModePropertyInfo = textEditor.GetType().GetProperty("_OvertypeMode", BindingFlags.NonPublic | BindingFlags.Instance);
if (overtypeModePropertyInfo == null)
throw new NotSupportedException("SetOverwriteable not support on this platform");
overtypeModePropertyInfo.SetValue(textEditor, true, null);
Ce qui précède doit se produire après le constructeur.