0

我想在调用 Copy 方法之前更改 Infragistics UltraTextEditor 中 SelectedText 的值。但是,每次我尝试设置新值时,SelectedText 都会变为空白。我在 C#,Visual Studio 2013 中工作。

这是代码片段:

            string textToAlter = this.externalMessageTextBox.SelectedText;

            if (textToAlter.Contains("\r\n"))
                textToAlter = textToAlter.Replace("\r\n", "\r");

            this.externalMessageTextBox.SelectedText = textToAlter;  // SelectedText becomes blank

附加信息:

要复制的文本是一条 HL7(健康级别 7)消息,如下所示。它需要回车和换行以使其在 UltraTextEditor 中作为文本可读,但 HL7 标准要求段仅以回车结束。我希望按照 HL7 标准对复制的文本进行格式化,因为用户最常复制它以粘贴到 HL7 特定的编辑器或解析器中。

以下是短信示例:

MSH|^~\&|LLS|NI|CTI|TEST0001|199712291047||ORU|57341.002|P|2.2
PID|1|111296|111296||Test^Patient|||M||||||||||1000  
ORC|RE|R6013121-4^CTI|6013121-4^LLS||||||19971229104734  
OBR|1|R6013121-4^CTI|6013121-4^LLS|5763^VITAMIN     B12^L|||19951218000000|||||||19951219091841||||||||19971229104736|||F
4

1 回答 1

0

这与一般的基础设施控制无关

但你必须这样做,即使我不太确定你在做什么......

        string textToAlter = this.externalMessageTextBox.SelectedText;

        if (textToAlter.Contains("\\r\\n"))
            textToAlter = textToAlter.Replace("\\r\\n", "\\r");

        this.externalMessageTextBox.SelectedText = textToAlter;

假设文本框中的 .text 是“ abc\r\n”,结果将是

" abc\r"

于 2014-12-30T02:36:17.773 回答