Мне интересно писать общий редактор с поддержкой Intellisense для SQL и С# (и т.д., если это возможно!). Я хотел бы сделать это в С# в качестве переопределенного или расширенного элемента управления WPF richTextBox. Я знаю, что есть много примеров проектов, и я реализовал свою собственную базовую версию; но большинство примеров, с которыми я столкнулся (и, действительно, мои собственные), - это просто, базовые.
Несколько примеров кода:
Однако я нашел отличный пример редактора SQL с Intellisense QueryCommander SQL Editor от Mikael Håkansson, который, кажется, работает хорошо. Microsoft должна использовать XML-команду с ключевыми словами команд, но мой вопрос: как (в деталях) реализовать Microsoft свой Intellisense (как Intellisense для вашего типа) и насколько мне было бы сложно создать свой собственный стандарт?
Редактирование A: Год спустя, и мне удалось разработать собственный редактор с основным intellisense в основном для моего собственного "удовольствия". Я думал, что вернусь, предоставил список свободно доступных .NET-проектов, которые помогли мне с моей собственной разработкой и могут быть использованы как бесплатно, так и бесплатно:
Изменить B: через 15 месяцев после того, как был задан вопрос, я все еще ищу новых редакторов. Это хорошо...
- RoslynPAD - это классно!
Изменить C: 2 года + на вопрос, я нашел следующие проекты, используя WPF и поддерживаемый AvalonEdit.
-
CodeCompletion для AvalonEdit, используя NRefactory. Этот проект действительно хорош и имеет полную реализацию intellisense с использованием NRefactory.
-
ScriptCS ScriptCS упрощает запись и выполнение С# с помощью простого текстового редактора.