Расширенные возможности Visual Studio
Оценить
(0 голоса)
Вы реагируете на событие ColorSelected посредством получения содержимого свойства PaletteControl. Code и записи его в текущий активный документ. Для этого вам опять пригодятся знания по объектной модели расширяемости, полученные в предыдущей главе. Класс DTE.ActiveDocument будет содержать ссылку на текущий активный документ. При помощи использования точки редактирования вы можете легко вписать текст в текстовый документ: TextDocument currDoc = (Text Document )_applicationObj ect. ActiveDocument .Object ("") ; EditPoint2 ep = (EditPoint2) currDoc.Selection.ActivePoint.CreateEditPoint() ; ep.Insert(_paletteControl.Code); ep.InsertNewLine(1);
Оценить
(0 голоса)
Последний шаг — это сделать конфигурируемым язык надстройки. Пользователи должны иметь возможность указать, какой код они хотят получить из надстройки: на языке C# или на языке Visual Basic. Для этого вам нужно иметь пользовательский интерфейс в виде стра­ницы Options (которая выведет диалоговое окно Options), а также место для сохранения выбранных опций. Создание пользовательского интерфейса страницы Option Надстройки могут ссылаться на страницу Options, которая будет появляться в диалоговом окне Tools Options. Точно так же, как вы делали для пользовательского окна инструментов, вы создадите пользовательский элемент управления для реализации логики и пользователь­ского интерфейса страницы Options. Начните с добавления нового пользовательского элемента управления…
Оценить
(0 голоса)
Механизм регистрации страницы Options такой же, как и для надстройки: используется addin-файл. При помощи добавления нескольких строк кода XML вы можете указать Visual Studio, что в пользовательской надстройке существует страница Options. Вы можете сде­лать это посредством редактирования addin-файла прямо в Visual Studio (поскольку он ав­томатически создается как часть проекта). Для включения необходимой регистрационной информации в виде XML отредактируйте addin- файл и поместите в него следующий XML-код (перед закрывающим тегом </extensibility>): <ToolsOptionsPage> <Category Name="Color Palette"> <SubCategory Name="Code Generation"> <Assembly>C:\Users\lpowers\My Documents\Visual Studio 2008\Projects\ PaletteControlAddIn\PaletteControlAddIn\bin\PaletteControlAddIn.dll</Assembly> <FullClassName>PaletteControlAddIn.PaletteControlOptionPage </FullClassName> </SubCategory> </Category> </ToolsOptionsPage> Для указания названия категории опций (отображаемой в диалоговом окне Tools Options) нужно использовать…
Оценить
(0 голоса)
Visual Studio иитеисивио использует разные мастера для руководства действиями разработ­чика при выполнении различных задач. Мастер Add-in Wizard (который мы обсудили в пре­дыдущих разделах) — это пример одного из мастеров новых проектов New Project Wizard (он запускается тогда, когда вы пытаетесь создать новый проект надстройки). Существуют также мастера для добавления в проекты новых элементов. Вы можете модифицировать существующие мастера для добавления элементов (Project | Add New Item) или создать свой мастер (вместе с его собственным пользовательским интерфейсом). В следующих разделах мы сосредоточимся па том, чтобы разобраться в мастерах, а также на создании пользовательского мастера Add New Item Wizard.
Оценить
(0 голоса)
Каждый мастер состоит из двух основных компонентов: класса, который содержит код (и пользовательский интерфейс) для мастера и vsz-файла, который предоставляет информацию о мастере для Visual Studio.
Оценить
(0 голоса)
Для подключения к движку мастеров Visual Studio ваш класс wizard должен реализовать интерфейс EnvDTF.. IDTWizard. Этот интерфейс определяет единственный метод (Execute), который вызывается средой Visual Studio при каждом запуске мастера. Вот про­тотип для методаIDTWizard.Execute (на языке С#): void Execute ( Object Application, i n L hwr.dOwne r, ret Objocl[] ContextParams, ref ObjeclU CusLortParams, out wizardRcsult retval Передаваемые в метод Execute аргументы используются для связи мастера со средой Visual Studio и для передачи мастеру необходимых данных: □    Application — экземпляр DTE для интегрированной среды Visual Studio; □    hwndOwner — дескриптор родительского окна; это окно будет родителем для всех эле­ментов пользовательского интерфейса,…
Оценить
(0 голоса)
Если вы помните из нашего обсуждения надстроек, то каждый такой модуль использует addin-файл для регистрации надстройки в Visual Studio. Для мастеров таким эквивалентом являются файлы с расширением vsz; они сообщают Visual Studio о мастере и о его реали­зующем классе. Вот пример vsz-файла: VSWizard 8.0 Wizard=ContosoWizard.AddNewClassWizard Param= Строка vswizard в этом файле указывает версию мастера. Число 9.0 соответствует Visual Studio 2008, а предыдущие номера версий соответствуют предыдущим версиям Visual Studio. Примечание Формат vsz-файла не изменился с версии Visual Studio 2003, так что номер версии значения практически не имеет; многие из входящих в комплект Visual Studio 2008 мастеров промаркированы как файлы версии…
Оценить
(0 голоса)
Вот основные шаги для создания мастера: 1.   Создайте новый проект библиотеки классов; в этом проекте создайте новый класс, кото­рый реализует интерфейс IDTWizard. 2.   В классе мастера в методе Execute напишите код для выполнения задач мастера и ото­бражения его пользовательского интерфейса. 3.   Создайте vsz-файл для мастера. 4.   Создайте или отредактируйте vsdir-файл для ссылок на новый мастер и vsz-файл. Для освоения этих концепций давайте рассмотрим их в действии. Мы проследим за разра­боткой мастера от начала и до конца. В данном случае это будет мастер Add Item Wizard для С#. Его цель — собрать у пользователя некоторые основные данные, а затем создать класс…
Оценить
(0 голоса)
Методу Execute нужно сделать две вещи: показать диалоговое окно Windows Forms для ввода предпочтений (таких как имя класса) и обработать эти предпочтения (сгенерировать класс, который реализует страницу Tools Options, и добавить этот класс в текущий проект). Создание диалогового окна Сначала диалоговое окно: оно должно выглядеть примерно так же, как диалоговое окно на рис. 13.14 (в реализации этой формы нет ничего особенного, так что мы не будем подробно заниматься здесь ее кодом). Когда пользователь щелкает по кнопке ОК, то вы должны настроить несколько свойств формы, которые отражают выбранные в диалоговом окне элементы. Например, если вы реализуете эту форму как класс wizardDialog,…
Оценить
(0 голоса)
Здесь есть два подхода к созданию класса страницы Tools Options: вы можете создать все строки кода при помощи либо интерфейса Code DOM API (или при помощи примитивного создания/конкатенации строк), либо при помощи файла шаблона. Подход с файлом шаблона немного проще и, вероятно, несколько более эффективен, поэтому именно его мы здесь и опишем (тема шаблонов в Visual Studio подробно исследуется в следующей главе). Шаблон класса— это файл, который выглядит точно так же, как любой другой пользова­тельский элемент управления. Используя стандартный код, созданный для класса пользова­тельского элемента управления, вы заменяете его ключевые области строковыми указателя­ми мест заполнения. Например, имя класса указывается внутри…
© 2017 www.visualstudios.ru. Все права защищены.