Поделиться через


завершение операторов

Завершение выписки это процесс, с помощью которого пользователи службы помогает ключевое слово языка завершатся или элемент языка которому они начали введя в редакторе. В этом разделе рассматривается, как завершение выписки работает и как реализовать в службе языка.

Реализация завершение выписки

В редакторе, завершение выписки активировать специальный пользовательский интерфейс, который позволяет интерактивно проще и быстрее пишет код. Завершение выписки помогает, отображая относящих объектов или классов, если они требуются, избежать необходимо помнить конкретные элементы или просматривать их вверх в разделе ссылки на справку.

Реализовать завершение выписки, язык должен иметь триггер завершения выписки, который можно проанализировать. Например, Visual Basic использует оператор " точка " (.), Visual C++ использует оператор > стрелки " (-). Служба языка может использовать несколько триггер, чтобы начать заполнение выписки. Эти триггеры осуществляется в фильтре команды.

Фильтры и триггеры команды

Фильтры команды перехватывают вхождения ваших триггера или триггеров. Чтобы добавить фильтр команды к представлению, реализуйте AddCommandFilter интерфейс и вложение его к представлению путем вызова IOleCommandTarget метод. Можно использовать один и тот же фильтр команды (IOleCommandTarget) для всех аспектов службы языка, например завершение выписки метки ошибок, а также советы метода. Дополнительные сведения см. в разделе Перехват команды службы языка.

При вводе в редакторе триггер - в частности, текстовый буфер - служба языка вызывает UpdateCompletionStatus метод. Это вызывает редактор вывести пользовательский интерфейс, чтобы пользователь мог выбрать один из выделенных завершения выписки. Этот метод требует реализации IVsCompletionSet и UpdateCompletionFlags флаги в качестве параметров. Список элементов завершения отображается в списке прокрутку. По мере того, как пользователь продолжает печати, выделение в списке обновляется, отражая ближайшая совпадение с последним печатанным символам. Редактор core реализует пользовательский интерфейс для завершения выписки, но служба должна реализовывать языка IVsCompletionSet интерфейс для определения набора элементов завершения выбранного для выписки.

См. также

Основные понятия

Перехват команды службы языка