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


Практическое руководство. Добавление обработчика событий

Процедуры добавления обработчиков событий в шаблон формы Microsoft Office InfoPath 2007 с управляемым кодом с использованием Набор средств Microsoft Visual Studio для приложений (VSTA) аналогичны процедурам добавления обработчиков событий для сценария. Например, чтобы добавить обработчик событий Loading, откройте шаблон формы в режиме конструирования InfoPath, выберите пункт Программирование в меню Сервис и щелкните Событие "Загрузка". Фокус автоматически сместится на структурный обработчик событий в редакторе кода VSTA.

В Visual Studio 2005 с Набор средств Microsoft Visual Studio 2005 для Microsoft Office System 2007 и в Visual Studio 2008 с Visual Studio Tools для Office используются аналогичные процедуры, за исключением добавления обработчиков событий для событий уровня форм (события Loading, ViewSwitched, ContextChanged и Sign). Эти отличия рассматриваются в следующих процедурах.

ЗаметкаВнимание!

Добавление обработчика событий приводит к созданию кода привязки события в методе InternalStartup файла FormCode.cs или FormCode.vb в проекте шаблона формы. Не следует самостоятельно создавать метод InternalStartup или добавлять какой-либо дополнительный код.

Добавление обработчика событий Click для элемента управления "Кнопка"

  1. Если работа осуществляется в InfoPath, откройте шаблон в режиме конструктора.

    Если работа осуществляется в Visual Studio, откройте проект Шаблон формы InfoPath.

  2. Из области задач Элементы управленияили Панели элементов приложения Visual Studio перетащите элемент управления Кнопка в форму.

  3. Дважды щелкните кнопку и выберите Редактировать код формы.

    Фокус переключится на структурный обработчик события Clicked в редакторе кода Visual Studio или VSTA.

Добавление обработчика событий Changing, Validating и Changed для поля или группы

  1. Если работа осуществляется в InfoPath, откройте шаблон в режиме конструктора.

    Если работа осуществляется в Visual Studio, откройте проект Шаблон формы InfoPath.

  2. Щелкните правой кнопкой мыши элемент управления ввода данных, связанный с полем или группой, например элемент управления Текстовое поле.

  3. Выберите пункт Программирование, а затем щелкните событие, которое требуется создать для обработчика событий. Фокус переключится на структурный обработчик событийChanging, Validating или Changed в редакторе кода VSTA или Visual Studio.

    ЗаметкаЗаметка

    Если при создании шаблона формы в диалоговом окне Создать форму был установлен флажок Включить только возможности, совместимые с веб-обозревателем, либо если был установлен флажок Макет шаблона формы для InfoPath и служб Forms Services в категории Совместимость диалогового окна Параметры формы, то команда для события "Изменение" будет недоступна. Это связано с тем, что обработчики событий Changing не поддерживаются в бизнес-логике шаблонов форм, опубликованных в библиотеках документов Microsoft Office Forms Server 2007 или Microsoft Office SharePoint Server 2007 с Служба InfoPath Forms Services.

Добавление обработчика событий Loading, ViewSwitched, ContextChanged и Sign для формы

  1. Если работа осуществляется в InfoPath, откройте шаблон в режиме конструктора.

    Если работа осуществляется в Visual Studio, откройте проект Шаблон формы InfoPath.

  2. В приложении InfoPath выберите пункт Программирование в меню Сервис, а затем щелкните событие формы, для которого требуется написать обработчик событий.

    В приложении Visual Studio выберите пункт Событие в меню Вставка, а затем щелкните событие, для которого требуется написать обработчик событий.

    Фокус переключится на структурный обработчик событий Loading, ViewSwitched, ContextChanged или Sign в редакторе кода VSTA или Visual Studio.

    ЗаметкаЗаметка

    Если при создании шаблона формы в диалоговом окне Создать форму был установлен флажок Включить только возможности, совместимые с веб-обозревателем, либо если был установлен флажок Макет шаблона формы для InfoPath и служб Forms Services в категории Совместимость диалогового окна Параметры формы, то команда для события "Контекст изменен" или события "Данные выбраны" будет недоступна. Это связано с тем, что обработчики событий ContextChanged и Sign не поддерживаются в бизнес-логике шаблонов форм, опубликованных в библиотеках документов Microsoft Office Forms Server 2007 или Microsoft Office SharePoint Server 2007 с Служба InfoPath Forms Services.

Добавление обработчика событий Submit для формы

  1. Если работа осуществляется в InfoPath, откройте шаблон в режиме конструктора.

    Если работа осуществляется в Visual Studio, откройте проектШаблон формы InfoPath и выберите вкладку manifest.xsf [Конструктор] для отображения конструктора формы.

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

  3. Последовательно щелкните Разрешить пользователям отправлять эту форму, Выполнить пользовательское действие с использованием кода и Редактировать код.

    Фокус переключится на структурный обработчик события Submit в редакторе кода Visual Studio или VSTA.

Добавление обработчика событий Save для формы

  1. Если работа осуществляется в InfoPath, откройте шаблон в режиме конструктора.

    Если работа осуществляется в Visual Studio, откройте проектШаблон формы InfoPath и выберите вкладку manifest.xsf [Конструктор] для отображения конструктора формы.

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

  3. Выберите категорию Открытие и сохранение, установите флажок Сохранить с использованием пользовательского кода, а затем щелкните Изменить.

    Фокус переключится на структурный обработчик события Save в редакторе кода Visual Studio или VSTA.

    ЗаметкаЗаметка

    Если при создании шаблона формы в диалоговом окне Создать форму был установлен флажок Включить только возможности, совместимые с веб-обозревателем, либо если был установлен флажок Макет шаблона формы для InfoPath и служб Forms Services в категории Совместимость диалогового окна Параметры формы, то флажок Сохранить с использованием пользовательского кода будет недоступен. Это связано с тем, что обработчики событий Save не поддерживаются в бизнес-логике шаблонов форм, опубликованных в библиотеках документов Microsoft Office Forms Server 2007 или Microsoft Office SharePoint Server 2007 с Служба InfoPath Forms Services.

Добавление обработчика событий VersionUpgrade для формы

  1. Если работа осуществляется в InfoPath, откройте шаблон в режиме конструктора.

    Если работа осуществляется в Visual Studio, откройте проектШаблон формы InfoPath и выберите вкладку manifest.xsf [Конструктор] для отображения конструктора формы.

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

  3. Выберите категорию Программирование, выберите вариант Использовать специальное событие в раскрывающемся списке При обновлении версии, а затем щелкните Изменить.

    Фокус переключится на структурный обработчик события Save в редакторе кода Visual Studio или VSTA.

Добавление обработчика событий Merge для формы

  1. Если работа осуществляется в InfoPath, откройте шаблон в режиме конструктора.

    Если работа осуществляется в Visual Studio, откройте проектШаблон формы InfoPath и выберите вкладку manifest.xsf [Конструктор] для отображения конструктора формы.

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

  3. Выберите категорию Дополнительно, установите флажок Разрешить объединение форм, а затем щелкните Изменить.

    Фокус переключится на структурный обработчик события Merge в редакторе кода Visual Studio или VSTA.

    ЗаметкаЗаметка

    Если при создании шаблона формы в диалоговом окне Создать форму был установлен флажок Включить только возможности, совместимые с веб-обозревателем, либо если был установлен флажок Макет шаблона формы для InfoPath и служб Forms Services в категории Совместимость диалогового окна Параметры формы, то флажок Разрешить объединение форм будет недоступен. Это связано с тем, что обработчики событий Merge не поддерживаются в бизнес-логике шаблонов форм, опубликованных в библиотеках документов Microsoft Office Forms Server 2007 или Microsoft Office SharePoint Server 2007 с Служба InfoPath Forms Services.

См. также

Задачи

Пошаговое руководство. Создание и отладка начального шаблона формы с помощью объектной модели InfoPath 2003