Изменение выделенного текста в UltraTextEditor

Я хочу изменить значение в SelectedText в Infragistics UltraTextEditor перед вызовом метода Copy. Однако каждый раз, когда я пытаюсь установить новое значение, 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 (Health Level 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

1 ответ

Это не имеет ничего общего с управлением инфраструктурой в целом

но ты должен делать это таким образом, даже если я не совсем уверен, что ты делаешь...

        string textToAlter = this.externalMessageTextBox.SelectedText;

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

        this.externalMessageTextBox.SelectedText = textToAlter;

скажем, текст в текстовом поле "abc\r\n"результат будет

"abc\r"

Другие вопросы по тегам