Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I don't know of a way to configure the parsing of RichTextBox content to text. Below is one way which uses xml linq. Regular expressions might work better but I suck at them. Pass ConvertToText method teh FLowDocument of your RichTextBox.</p> <pre><code>private static string ConvertToText(FlowDocument flowDocument) { TextRange textRangeOriginal = new TextRange(flowDocument.ContentStart, flowDocument.ContentEnd); string xamlString; using (MemoryStream memoryStreamOriginal = new MemoryStream()) { textRangeOriginal.Save(memoryStreamOriginal, DataFormats.Xaml); xamlString = ASCIIEncoding.Default.GetString(memoryStreamOriginal.ToArray()); } XElement root = XElement.Parse(xamlString); IEnumerable&lt;XElement&gt; smilies = from element in root.Descendants() where (string)element.Attribute("FontFamily") == "Wingdings" &amp;&amp; IsSmiley(element.Value) select element; foreach (XElement element in smilies.ToList()) { XElement textSmiley = new XElement(element.Name.Namespace + "Span", new XElement(element.Name.Namespace + "Run", GetTextSmiley(element.Value))); element.ReplaceWith(textSmiley); } using (MemoryStream memoryStreamChanged = new MemoryStream()) { StreamWriter streamWriter = new StreamWriter(memoryStreamChanged); streamWriter.Write(root.ToString(SaveOptions.DisableFormatting)); streamWriter.Flush(); FlowDocument flowDocumentChanged = new FlowDocument(); TextRange textRangeChanged = new TextRange(flowDocument.ContentStart, flowDocument.ContentEnd); textRangeChanged.Load(memoryStreamChanged, DataFormats.Xaml); return textRangeChanged.Text; } } private static string GetTextSmiley(string value) { switch (value) { case "J" : return ":)"; case "K" : return ":|"; case "L" : return ":("; default : throw new ArgumentException(); } } private static bool IsSmiley(string value) { return value == "J" || value == "K" || value == "L"; } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload