HI,Захват клавиатурных штрихов в C#
У меня проблема: следующий текст находится в расширенном текстовом поле.
Мир [[замечательный]] сегодня.
Если пользователь имеет два кронштейна до и дает слово, как в случае прекрасного слова в скобках, в этом случае прекрасное должно измениться на ссылку (с зеленым цветом).
У меня возникают проблемы с получением последовательности нажатий клавиш, т.е. откуда я знаю, что пользователь ввел [[, поэтому я могу начать разбирать остальную часть текста, который следует за ним.
Я могу получить его вручную, KeyDown, событие и список, но он не выглядит элегантным вообще.
Пожалуйста, дайте мне знать, что должно быть надлежащим образом.
Спасибо, Sujay
Если ссылки не могут быть многострочными (часто это бывает) Не нужно сканировать всю строку, если вы сохраняете копию строки, хранящейся в строках. Затем каждую строку можно разобрать отдельно, и она не масштабируется по общему размеру строки. –
Я уже делал событие KeyDown и фиксировал скобки, но я не думаю, что это приличная программа Не существует какого-либо подхода с шаблонами проектирования, которые могут решить эту проблему. Например, я думаю об этом. [[замечательный]] текст - это объект. Когда я сталкиваюсь с фигурными скобками, я делегирую его функции, например SetFormatStyle (текст), которая делает это нужным. –