كيفية الحصول على RTF من RichTextBox
-
03-07-2019 - |
سؤال
وكيف يمكنني الحصول على النص في RTF من RichTextBox
؟ أنا أحاول أن أحصل على مثل هذا، ولكن عدم وجود الممتلكات.
RichTextBox rtb = new RichTextBox();
string s = rtb.Rtf;
المحلول
لتحصل على XAML الفعلية التي تم إنشاؤها من قبل المستخدم داخل RichTextBox:
TextRange tr = new TextRange(myRichTextBox.Document.ContentStart,
myRichTextBox.Document.ContentEnd);
MemoryStream ms = new MemoryStream();
tr.Save(ms, DataFormats.Xaml);
string xamlText = ASCIIEncoding.Default.GetString(ms.ToArray());
وتحرير: ليس لدي كود أمامي لاختبار، ولكن مثيل من نوع TextRange
لديه Save
(تيار) أسلوب يأخذ معلمة DataFormats
، والتي يمكن DataFormats.Rtf
نصائح أخرى
وهناك 2 الطبقات RichTextBox، واحدة من إطار WinForms عناصر واحدة من إطار برنامج الأغذية العالمي:
System.Windows.Controls.RichTextBox wpfBox;
System.Windows.Forms.RichTextBox winformsBox;
وفقط RichTextBox WinForms عناصر لديها خاصية رتف، والآخر له خاصية الوثيقة التي تحتوي على FlowDocument.
لا تنتمي إلى StackOverflow