Kann jemand Licht auf diese für mich werfen, habe ich eine RichTextBox, die eine Xaml-Datei hinein lädt. Ich muss bestimmte Teile des RichTxtBox-Textes durch echte Daten ersetzen, d. H. "[Unser_Name]" wird durch "Billie Brags" ersetzt. Meine XAML-Datei enthält Formatierung wie fett & Schriftgröße.Ersetzen Sie RichTextBox Text, aber behalten Sie die Formatierung
Wenn ich meinen Code ausführen (siehe unten) kann ich den Text ändern, aber die Formatierung verlieren.
Irgendeine Idee, wie ich das tun und die Formatierung behalten kann?
Danke
FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
using (fs)
{
TextRange RTBText = new TextRange(rtb_wording.Document.ContentStart, rtb_wording.Document.ContentEnd);
RTBText.Load(fs, DataFormats.Xaml);
}
TextRange tr = new TextRange(rtb_wording.Document.ContentStart, rtb_wording.Document.ContentEnd);
string rtbContent = tr.Text;
rtbContent = rtbContent.Replace("<our_name>", "Billie Brags");
System.Windows.MessageBox.Show(rtbContent);
FlowDocument myFlowDoc = new FlowDocument();
// Add paragraphs to the FlowDocument
myFlowDoc.Blocks.Add(new Paragraph(new Run(rtbContent)));
rtb_wording.Document = myFlowDoc;
Sie können auch 'UTF32Encoding.Default.GetString (memoryStream.ToArray()); dies ist besser geeignet für globalisierte Anwendungen –
Warten UTF32Encoding gibt einige Probleme bei Unicode-Text. Sogar UTF8Encoding. Hm.. –