Bei Verwendung der Microsoft RichTextBox Steuerung ist es möglich, fügen Sie neue Zeilen wie diese ...Wie line in RTF mit RichTextBox Steuerung
richtextbox.AppendText(System.Environment.NewLine); // appends \r\n
Wenn Sie jedoch jetzt sehen die generierten rtf die \ r anhängen \ n Zeichen werden in \ par not \ Zeile konvertiert
Wie füge ich einen \ line Steuercode in das generierte RTF ein?
Was does't Arbeit:
Token Ersatz
Hacks wie ein Token am Ende des Strings eingefügt und dann nach der Tat zu ersetzen, so etwas wie diese:
Dies hat fast funktioniert, es bricht zusammen, wenn Sie von rechts nach links Text unterstützen müssen, da die Rechts-nach-Links-Steuersequenz immer in der Mitte des endet Platzhalter.
Senden Key Messages
public void AppendNewLine()
{
Keys[] keys = new Keys[] {Keys.Shift, Keys.Return};
SendKeys(keys);
}
private void SendKeys(Keys[] keys)
{
foreach(Keys key in keys)
{
SendKeyDown(key);
}
}
private void SendKeyDown(Keys key)
{
user32.SendMessage(this.Handle, Messages.WM_KEYDOWN, (int)key, 0);
}
private void SendKeyUp(Keys key)
{
user32.SendMessage(this.Handle, Messages.WM_KEYUP, (int)key, 0);
}
Dies auch
Gibt es eine Möglichkeit eine direkt an die Msftedit Steuer messaged, um es zu einem \ par umgewandelt endet als ein Steuerzeichen einfügen?
Ich bin total ratlos, irgendwelche Ideen Jungs? Danke für Ihre Hilfe!
Ein Hinweis, obwohl Monos RichTextBox-Emulation eher gebrochen ist und unter anderem den Zeilentrenner nicht versteht. Es erscheint als ein Box-Zeichen im Text. –
Das funktionierte wie ein Zauber für mich, es erlaubte mir, den schrecklichen Hack, den wir hatten, zu entfernen. Unsere Kunden werden es Ihnen danken! –