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


Возможности технологии IntelliSense в редакторе XML

Редактор XML предоставляет полные возможности IntelliSense, сопоставимые с другими языковыми редакторами в Visual Studio. Средства IntelliSense управляются определением DTD или схемой на языке XSD, связанной с XML-документом.

После того как схема связывается с документом (сведения о связывании схем с XML-документами см. в разделе Проверка XML-документа), каждый раз при вводе символа "<" или нажатии кнопки Вывести список членов объекта на панели инструментов редактора XML появляется раскрывающийся список ожидаемых элементов.

После ввода пробела внутри открывающего тега также раскрывается список всех атрибутов, которые можно добавить к текущему элементу.

После ввода знака "=" для указания значения атрибута (или, для той же цели, открывающей кавычки) также появляется список возможных значений этого атрибута. Значения предоставляются только в том случае, если схема содержит перечисленные значения в аспектах xsd:enumeration или если атрибут имеет тип Boolean. Средствами IntelliSense предоставляется также список известных кодов языков для значения xml:lang или любого типа simpleType, производного от xsd:language. Для деклараций пространств имен выводится предусмотренный средствами IntelliSense список известных значений targetNamespace.

Список IntelliSense известных значений также предоставляется после ввода знака ">" для закрытия открывающего тега, если элемент имеет тип simpleType. Действия с элементами аналогичны действиям с атрибутами, описанным в предыдущем абзаце.

Кроме того, в этих списках IntelliSense выводятся также подсказки на основе данных xsd:annotation и xsd:documentation, находящихся в связанной схеме.

Автоматическое завершение

Редактор XML облегчает также редактирование XML-документов, автоматически вставляя необходимые элементы синтаксиса. Например, если ввести следующий открывающий тег:

<book>

Редактор XML добавляет закрывающий тег и помещает курсор после открывающего тега. Ниже приведен пример этого действия (знак «|» указывает положение курсора):

<book>|</book>

Поскольку значения атрибутов должны быть всегда заключены в кавычки, редактор XML автоматически вставляет кавычки. Например, если ввести следующий текст:

<book title=

Редактор XML вставляет кавычки и помещает курсор между ними:

<book title="|"

Аналогичным образом, редактор XML автоматически вставляет следующие элементы синтаксиса:

  • Окончание инструкции по обработке: ?>

  • Окончание блока CDATA: ]]>

  • Окончание комментария: -->

  • Окончание DTD-декларации: >

Редактор XML также может вставить декларацию пространств имен, если выбран уточненный обозначением пространства имен элемент или атрибут из списка IntelliSense, при том что пространство имен для этого элемента или атрибута еще не находится в области видимости.

Например, если выбрать элемент e:Book из списка IntelliSense, где префикс привязан к пространству имен http://books, еще не объявленному в документе, редактор XML вставит необходимую декларацию пространства имен. Ниже показан результирующий XML-текст.

<e:Book xmlns:e="http://books"

Согласование скобок

Редактор XML выделяет скобки подсветкой, что позволяет проверять формат элементов сразу после их закрытия. Можно также с помощью сочетания клавиш CTRL+] переходить от одной парной скобки к другой.

Редактор XML выполняет это действие для следующих элементов.

  • Согласованные открывающий и закрывающий теги.

  • Любая пара угловых скобок «<» и «>».

  • Начало и конец комментария.

  • Начало и конец инструкций по обработке.

  • Начало и конец блока CDATA.

  • Начало и конец DTD-деклараций.

  • Открывающие и закрывающие кавычки атрибутов.

Изменение параметров IntelliSense

Функции IntelliSense и автоматического завершения по умолчанию включены. Однако их можно выключить, изменив настройки «Сервис» и «Параметры».

Раздел Автоматическая вставка страницы Разное управляет следующими действиями.

Имя Описание

Закрывать теги

Вставляет закрывающие теги для новых элементов.

Кавычки атрибутов

Вставляет кавычки для значений атрибутов при вводе имени нового атрибута.

Прочая разметка

Завершает комментарии, CDATA, DOCTYPE, инструкции обработки и другие декларации разметки.

Изменение поведения функции автоматического завершения

  1. В меню Сервис выберите пункт Параметры.

  2. Разверните пункт Текстовый редактор, затем XML и выберите пункт Разное.

  3. Внесите изменения в раздел Автоматическая вставка и нажмите кнопку ОК.

См. также

Понятия

Редактор XML

Другие ресурсы

Using IntelliSense