Подсветка синтаксиса в ListBox - PullRequest
0 голосов
/ 30 апреля 2009

Я искал в Интернете, и я не могу найти ничего, что будет работать для меня. Я видел множество дискуссий и даже несколько довольно расширяемых инструментов с открытым исходным кодом для редакторов кода, которые предоставляют номера строк и подсветку синтаксиса.

Вот моя дилемма ...

Я работаю над проектом «цифровой проверки кода» в C # .NET, который позволяет пользователям указывать исходные файлы, добавлять их в определенный сеанс, а другие пользователи могут оставлять комментарии и ссылаться на строки для проверяемых файлов.

Основные требования:

  • Должен быть написан на C # .NET
  • Мне не нужно редактировать текст в текстовом поле
  • Пользователи должны иметь возможность выбрать строку (или несколько строк) для создания ссылок на строки.

Мне кажется, мне нужна какая-то необычная реализация элемента управления ListBox (не раскрывающегося списка), который имеет некоторые возможности OwnerDraw для добавления номеров строк и подсветки синтаксиса. К сожалению, мне не повезло собрать его самому, и я не могу найти уже написанный элемент управления или ссылку на то, как мне это удастся.

Есть предложения ??

Ответы [ 2 ]

0 голосов
/ 30 апреля 2009

Я бы использовал для этого элемент управления текстовым полем, просто сделайте его доступным только для чтения и вставьте номера строк при загрузке. Просто быстрый вопрос, когда вы говорите:

Пользователи должны иметь возможность выбрать строку (или несколько строк) для создания ссылок на строки.

Это в веб-приложении? Как пользователи указывают, что они хотят создать ссылку (какая-то кнопка?). Проще сделать это на окнах с помощью контекстного меню. Куда ведет пользовательская ссылка на код, как она выглядит для других пользователей, просматривающих код?

0 голосов
/ 30 апреля 2009

Предлагаю попробовать ScintillaNet . Он имеет подсветку синтаксиса и номера строк (и многое другое). Однако вы не можете выбрать больше строк только один выбор за один раз.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...