我想在调用复制方法之前更改Infragistics UltraTextEditor中SelectedText的值。 但是,每次我尝试设置新值时,SelectedText 都会变为空白。我正在使用C#,Visual Studio 2013。
以下是代码片段:
string textToAlter = this.externalMessageTextBox.SelectedText;
if (textToAlter.Contains("rn"))
textToAlter = textToAlter.Replace("rn", "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
一般的基础设施控制无关
但是你必须这样做,即使我不太确定你在做什么......
string textToAlter = this.externalMessageTextBox.SelectedText;
if (textToAlter.Contains("\r\n"))
textToAlter = textToAlter.Replace("\r\n", "\r");
this.externalMessageTextBox.SelectedText = textToAlter;
假设文本框中的 .text 是"abcrn
"结果将是
"abcr
"