Преобразование из форматированного текста в простые текстовые задачи

В настоящее время у нас есть приложение (служба Windows), которое подключается к другому из наших приложений и получает счета. В счетах есть поле RTF для полей нижнего колонтитула. Когда мы получаем данные, RTF преобразуется в обычный текст со следующим кодом:

<code>public static string ConvertFromRTFToPlainText(string rtfString)
{
    if (rtfString == null)
        return null; 

    System.Windows.Forms.RichTextBox rtBox = new System.Windows.Forms.RichTextBox();

    if (rtfString.StartsWith("{\\rtf1"))
        rtBox.Rtf = rtfString;
    else
        rtBox.Text = rtfString;

    return rtBox.Text;
}
</code>

По большей части это работает, но в некоторых случаях (каждый конкретный клиент получает его каждый раз) я получаю следующее исключение:

<code>Exception Message:Error creating window handle.
Stack trace:
at System.Windows.Forms.NativeWindow.CreateHandle(CreateParams cp)
at System.Windows.Forms.Control.CreateHandle()
at System.Windows.Forms.TextBoxBase.CreateHandle()
at System.Windows.Forms.RichTextBox.set_Rtf(String value)
at SmartTrade.Common.API.Tools.RTFHelperUtility.ConvertFromRTFToPlainText(String rtfString)
at SmartTrade.Desktop.Proxy.API.ObjectMapper.InvoiceObjectMapper.CovertToAPIInvoice(Invoice domainInvoice)
</code>

Любая помощь по поводу того, почему это происходит или как мы можем обойти это, будет высоко ценится.

EditСпасибо Джереми за объяснение, я после предложений по альтернативным вариантам преобразования RTF.

Ответы на вопрос(2)

Ваш ответ на вопрос