Я ищу Элемент управления текстового редактора Silverlight, который предоставляет Подсветка синтаксиса XML. Я нашел несколько ответов в Winforms или WPF, например здесь, в Stackoverflow, но мне не удалось преобразовать их в Silverlight. Тот факт, что в Silverlight отсутствует System.Drawing, вероятно, является большой проблемой.
Единственный текстовый редактор, который я нашел для Silverlight, - это RichTextEdit на Codeplex, но я не думаю, что это подходящая основа для подсветки синтаксиса в реальном времени.
Кто-нибудь слышал о таком элементе управления или может подсказать, как его создать? Большое спасибо,
Ромен





Я подумал, что это интересный вопрос, но у тебя нет ответа.
Я не знаю о существующем контроле.
Я создал элемент управления для редактирования XHTML, но он тоже использует System.Drawing, а не WPF (и, следовательно, не для Silverlight).
WPF, вероятно, не менее эффективен, чем System.Drawing, но я этого не знаю.
Подсказки о том, как я это построил:
Если вам действительно нужны подсказки о том, как его построить, спросите что-нибудь более конкретное.
Привет и спасибо за ответ!
К сожалению, хотя WPF имеет возможности рисования, Silverlight запускает очень ограниченный набор CLR. Раскрашивание пользовательского элемента управления выглядит довольно сложной задачей.
Однако это было сделано раньше с этим Редактор форматированного текста для Silverlight. Я посмотрю, удастся ли мне использовать аналогичные методы для визуализации XML-документа.
Один вопрос: достаточно ли быстр пользовательский элемент управления, чтобы визуализировать DOM на лету, когда пользователь вносит изменения?
Наконец-то я нашел тот контроль, который искал! SL2TextBoxWsSynParser
Обновлено: этот элемент управления, похоже, больше не обновляется, но появился новый элемент управления подсветкой синтаксиса:
Он доступен здесь и используется на веб-сайте CoderProof.
Actipro Software имеет компонент подсветки синтаксиса для Winforms, WPF и Silverlight:
Обновленную версию можно найти здесь: vladhorby.com/blog/post/2010/11/01/…. Теперь он поддерживает различные языки (C#, VB.NET, XML и т. д.)