DialogPage Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет стандартные функциональные возможности диалогового окна для реализации страниц свойств панели элементов, страницы Тулсоптионс или настраиваемых диалоговых окон пользовательского интерфейса с поддержкой модели автоматизации Visual Studio, Windows Forms и сохраняемости состояния с помощью механизма параметров Visual Studio.
public ref class DialogPage : System::ComponentModel::Component, Microsoft::VisualStudio::Shell::IProfileManager, System::Windows::Forms::IWin32Window
[System.Runtime.InteropServices.ComVisible(true)]
public class DialogPage : System.ComponentModel.Component, Microsoft.VisualStudio.Shell.IProfileManager, System.Windows.Forms.IWin32Window
[<System.Runtime.InteropServices.ComVisible(true)>]
type DialogPage = class
inherit Component
interface IWin32Window
interface IProfileManager
Public Class DialogPage
Inherits Component
Implements IProfileManager, IWin32Window
- Наследование
-
DialogPage
- Производный
- Атрибуты
- Реализации
Комментарии
Примечания для разработчиков
Реализуйте классы, производные от DialogPage , при создании диалогового окна пользователя, особенно страницы параметров средств или страницы свойств панели элементов .
Примечания для вызывающих объектов
Простейшая реализация DialogPage требует только определения открытых свойств для реализующего класса. Типы свойств должны поддерживать преобразование в строки и из строк с помощью TypeConverter .
Базовая реализация DialogPage предоставляет обработчики по умолчанию для стандартных событий Windows и реализует Component , IWin32Window и IProfileManager .
Классы, производные от, DialogPage имеют следующие преимущества:
Автоматическая поддержка совместного использования компонентов с помощью Visual Studio объектной модели автоматизации DTE.
Любой экземпляр DialogPage является объектом автоматизации, так как класс наследует Component реализацию интерфейса.
Приложения, которым необходим доступ к объекту автоматизации класса, используют AutomationObject свойство.
AutomationObjectСвойство возвращает
this(Meв Visual Basic ), поскольку реализация DialogPage уже является объектом автоматизации по умолчанию.Реализация DialogPage может предлагать объект автоматизации, отличный от самого себя, переопределяя базовую AutomationObject реализацию. Например, это может быть сделано для предоставления отдельного пользовательского интерфейса и объектных моделей.
Поддержка Visual Studio механизма параметров, основанная на открытых свойствах объекта автоматизации производного класса.
Для объекта, производного от DialogPage , для обеспечения сохраняемости он должен быть зарегистрирован с помощью ProvideProfileAttribute .
Типы, производные от DialogPage , наследуют реализацию сохраняемости по умолчанию IProfileManager .
Реализация по умолчанию сохраняет все открытые свойства объекта автоматизации класса производный, который является объектом, возвращаемым методом, AutomationObject который поддерживает преобразование в строки и из строк с помощью TypeConverter .
Это поведение можно изменить путем переопределения LoadSettingsFromXml , SaveSettingsToXml , LoadSettingsFromStorage и SaveSettingsToStorage .
Пользовательский интерфейс по умолчанию, основанный на открытых свойствах объекта автоматизации производного класса.
Для реализации диалоговой страницы, которая предоставляет страницу параметров инструментов , она должна быть зарегистрирована с помощью ProvideOptionPageAttribute .
Для реализации диалоговой страницы диалогового окна панели элементов она должна быть зарегистрирована с помощью ProvideToolboxPageAttribute .
Страницы диалогового окна используют Window для возврата IWin32Window , который предоставляет маркер для окна, предоставляющего пользовательский интерфейс класса.
По умолчанию окно, на которое ссылается, Window является сеткой свойств, которая реализуется экземпляром PropertyGrid путем выбора объекта автоматизации.
DialogPageБазовый класс использует его реализацию AutomationObject для получения объекта автоматизации класса и общих свойств этого объекта автоматизации.
Изменения общедоступных свойств, выполненных через пользовательский интерфейс страницы диалогового окна, автоматически сохраняются в локальное хранилище (обычно в реестре) путем вызова SaveSettingsToStorage метода.
Реализация страницы диалогового окна может изменить свой пользовательский интерфейс путем переопределения Window .
Примечание
Как правило, экземпляр класса страницы диалогового окна является своим собственным объектом автоматизации. Поэтому свойства, которые сохраняются или отображаются, являются свойствами класса, производного от DialogPage . Однако если AutomationObject возвращает другой объект, это свойства объекта, а не класс, которые сохраняются или отображаются.
Конструкторы
| DialogPage() |
Инициализирует новый экземпляр DialogPage. |
| DialogPage(JoinableTaskContext) |
Создает экземпляр класса DialogPage. |
| DialogPage(JoinableTaskContext, ISettingsManager3) |
Создает экземпляр класса DialogPage. |
Свойства
| AutomationObject |
Получает объект модели автоматизации DTE для заданного экземпляра класса страницы диалогового окна. |
| CancellationToken | |
| DpiMode | |
| SettingsRegistryPath |
Возвращает или задает вложенный ключ в корневом каталоге версии Visual Studio для хранения данных параметров для страницы диалогового окна. |
| SharedSettingsStorePath |
Возвращает расположение, в котором хранятся параметры в хранилище общих параметров. Он основан на Шаредсеттингсаттрибуте на Аутоматионобжект или полное имя типа, если атрибут не задан. |
| Site |
Получает или задает сайт страницы диалогового окна. Переопределяет реализацию, унаследованную от Component. |
| Window |
Получает окно, которое используется в качестве пользовательского интерфейса страницы диалогового окна. |
Методы
| Dispose(Boolean) |
Освобождает неуправляемые ресурсы, используемые классом диалоговой страницы и, возможно, освобождает управляемые ресурсы; родительский класс Component поддерживает неуправляемые ресурсы. |
| DoCancelableOperationWithProgressUI(Action, String) |
Выполняет операцию с отменяемым пользовательским интерфейсом выполнения, если вызывается в потоке пользовательского интерфейса при открытом диалоговом окне параметров. |
| DoCancelableOperationWithProgressUI(Func<CancellationToken,Task>, String) | |
| FinishPendingWorkAsync() | |
| GetDefaultPropertyValue(PropertyDescriptor) | |
| GetDpiAwareObject() | |
| GetSharedSettingsStorePath(PropertyDescriptor) |
Возвращает путь к хранилищу общих параметров для данного свойства. |
| IsPropertyValueMachineLocal(PropertyDescriptor, Object, String) |
Возвращает, является ли данное значение свойства Аутоматионобжект локальным для этого компьютера (VS, перемещаемого на другие компьютеры). |
| LoadSettingFromStorage(PropertyDescriptor) | |
| LoadSettingsFromStorage() |
Вызывается Visual Studio для загрузки параметров страницы диалогового окна из локального хранилища, как правило, в реестре. |
| LoadSettingsFromXml(IVsSettingsReader) |
Вызывается Visual Studio для загрузки параметров страницы диалогового окна из хранилища параметров Visual Studio на диске. |
| MapSerializablePropertyDescriptor(PropertyDescriptor, Object, PropertyDescriptor) |
Позволяет наблюдать за изменениями в другом свойстве вместо свойства, описываемого в |
| OnActivate(CancelEventArgs) |
Обрабатывает |
| OnApply(DialogPage+PageApplyEventArgs) |
Обрабатывает |
| OnClosed(EventArgs) |
Обрабатывает |
| OnDeactivate(CancelEventArgs) |
Обрабатывает |
| ResetSettings() |
Должен быть переопределен, чтобы сбросить параметры, вернув им значения по умолчанию. |
| SaveSetting(PropertyDescriptor) | |
| SaveSettingsToStorage() |
Вызывается Visual Studio для сохранения параметров страницы диалогового окна в локальном хранилище (обычно реестр). |
| SaveSettingsToXml(IVsSettingsWriter) |
Вызывается Visual Studio для сохранения параметров страницы диалогового окна в хранилище параметров Visual Studio на диске. |
Явные реализации интерфейса
| IWin32Window.Handle |