DialogPage Klasse

Definition

Stellt eine Standard Dialogfeld Funktionalität zum Implementieren von Toolbox-Eigenschaften Blättern, ToolsOptions-Seiten oder benutzerdefinierten Benutzeroberflächen-Dialogfeldern bereit, mit Unterstützung für das Visual Studio-Automatisierungs Modell, Windows Forms und Zustands Persistenz mithilfe des Visual Studio-Einstellungs Mechanismus.

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
Vererbung
DialogPage
Abgeleitet
Attribute
Implementiert

Hinweise

Hinweise für Implementierer

Implementieren Sie Klassen, die von abgeleitet DialogPage werden, wenn Sie ein Benutzer Dialogfeld erstellen, insbesondere die options Seite Extras oder eine Toolbox -Eigenschaften Seite.

Hinweise für Aufrufer

Die einfachste Implementierung von DialogPage erfordert nur die Definition öffentlicher Eigenschaften für die implementierende Klasse. Die Eigenschaften Typen müssen die Konvertierung in und aus Zeichen folgen durch unterstützen TypeConverter .

Die Basis Implementierung von DialogPage stellt Standard Handler für standardmäßige Windows-Ereignisse bereit und implementiert Component , IWin32Window und IProfileManager .

Klassen, die von abgeleitet werden, DialogPage haben Folgendes:

  • Automatische Unterstützung für die gemeinsame Nutzung von Komponenten über das Visual Studio DTE-Automatisierungs Objektmodell.

    • Jede Instanz von DialogPage ist ein Automatisierungs Objekt, da die-Klasse die Component Schnittstellen Implementierung erbt.

    • Anwendungen, die auf das Automatisierungs Objekt der-Klasse zugreifen müssen, verwenden die- AutomationObject Eigenschaft.

      Die- AutomationObject Eigenschaft gibt this ( Me in) zurück Visual Basic , da die Implementierung von DialogPage bereits standardmäßig ein Automation-Objekt ist.

    • Eine Implementierung von DialogPage kann ein anderes Automatisierungs Objekt als sich selbst anbieten, indem die Basis Implementierung überschrieben wird AutomationObject . Dies kann z. b. geschehen, um separate Benutzeroberflächen-und Objekt Modelle bereitzustellen.

  • Unterstützung für den Visual Studio Einstellungs Mechanismus, basierend auf den öffentlichen Eigenschaften des Automatisierungs Objekts der abgeleiteten Klasse.

  • Eine Standardbenutzer Oberfläche, die auf den öffentlichen Eigenschaften des Automatisierungs Objekts der abgeleiteten Klasse basiert.

    • Damit eine Dialogfeld Seiten Implementierung eine Options Seite für Tools bereitstellt, muss Sie mithilfe von registriert werden ProvideOptionPageAttribute .

    • Damit eine Dialogfeld Seiten Implementierung eine Toolbox Dialogseite bereitstellt, muss Sie mithilfe von registriert werden ProvideToolboxPageAttribute .

    • Dialog Seiten verwenden, Window um einen zurückzugeben IWin32Window , der ein Handle für das Fenster bereitstellt, das die Benutzeroberfläche der Klasse bereitstellt.

    • Standardmäßig ist das Fenster, auf das von verwiesen wird Window , ein Eigenschaften Raster, das von einer Instanz von implementiert wird, PropertyGrid indem das Automatisierungs Objekt ausgewählt wird.

    • Die DialogPage -Basisklasse verwendet die-Implementierung von AutomationObject , um das Automatisierungs Objekt der-Klasse und die öffentlichen Eigenschaften dieses Automatisierungs Objekts abzurufen.

    • Änderungen an öffentlichen Eigenschaften, die über die Benutzeroberfläche einer Dialogfeld Seite vorgenommen werden, werden automatisch im lokalen Speicher (in der Regel die Registrierung) gespeichert, indem die-Methode aufgerufen wird SaveSettingsToStorage .

    • Die Benutzeroberfläche einer Dialogfeld Seite kann durch Überschreiben geändert werden Window .

Hinweis

In der Regel handelt es sich bei einer Instanz einer Dialogfeld Seiten Klasse um ein eigenes Automatisierungs Objekt. Daher sind Eigenschaften, die persistent oder angezeigt werden, die der Klasse, die von abgeleitet wird DialogPage . Wenn jedoch AutomationObject ein anderes Objekt zurückgibt, handelt es sich dabei um die Eigenschaften des Objekts, nicht um die Klassen, die persistent oder angezeigt werden.

Konstruktoren

DialogPage()

Initialisiert eine neue Instanz von DialogPage.

DialogPage(JoinableTaskContext)

Erstellt eine Instanz von DialogPage.

DialogPage(JoinableTaskContext, ISettingsManager3)

Erstellt eine Instanz von DialogPage.

Eigenschaften

AutomationObject

Ruft das DTE-Automatisierungsmodellobjekt für eine bestimmte Instanz einer Dialogfeldseitenklasse ab.

CancellationToken
DpiMode
SettingsRegistryPath

Ruft den Unterschlüssel unter dem Visual Studio-Versions spezifischen Stamm zum Speichern von Einstellungsdaten für eine Dialogseite ab oder legt diesen fest.

SharedSettingsStorePath

Ruft den Speicherort ab, an dem die Einstellungen im Speicher für freigegebene Einstellungen gespeichert werden. Sie basiert auf sharedsettingsattribute für Ihr AutomationObject oder auf dem vollständigen Typnamen, wenn das Attribut nicht angegeben ist.

Site

Ruft die Site der Dialogseite ab oder legt diese fest. Überschreibt die Implementierung, die von Component geerbt wird.

Window

Ruft das Fenster ab, das als die Benutzeroberfläche der Dialogfeldseite verwendet wird.

Methoden

Dispose(Boolean)

Gibt die nicht verwalteten Ressourcen frei, die von einer Dialogfeldseitenklasse verwendet werden, und gibt optional die verwalteten Ressourcen frei; die übergeordnete Klasse, Component, unterstützt nicht verwaltete Ressourcen.

DoCancelableOperationWithProgressUI(Action, String)

Führt einen Vorgang mit abbrechbaren Status-UI aus, wenn im UI-Thread aufgerufen wird, wenn das Options Dialogfeld geöffnet ist.

DoCancelableOperationWithProgressUI(Func<CancellationToken,Task>, String)
FinishPendingWorkAsync()
GetDefaultPropertyValue(PropertyDescriptor)
GetDpiAwareObject()
GetSharedSettingsStorePath(PropertyDescriptor)

Gibt den Speicherpfad für freigegebene Einstellungen für die angegebene Eigenschaft zurück.

IsPropertyValueMachineLocal(PropertyDescriptor, Object, String)

Gibt zurück, ob ein angegebener Wert aus einer Eigenschaft für das AutomationObject auf diesem Computer lokal ist (vs. kann auf anderen Computern roamtierbar sein).

LoadSettingFromStorage(PropertyDescriptor)
LoadSettingsFromStorage()

Wird von Visual Studio aufgerufen, um die Einstellungen einer Dialogfeld Seite aus dem lokalen Speicher, im Allgemeinen die Registrierung, zu laden.

LoadSettingsFromXml(IVsSettingsReader)

Wird von Visual Studio aufgerufen, um die Einstellungen einer Dialogfeld Seite aus dem Visual Studio-Einstellungs Speicher auf dem Datenträger zu laden.

MapSerializablePropertyDescriptor(PropertyDescriptor, Object, PropertyDescriptor)

Ermöglicht es, eine andere Eigenschaft für Änderungen zu beobachten, anstelle der Eigenschaft, die von descriptor in der beschrieben wird AutomationObject .

OnActivate(CancelEventArgs)

Verarbeitet Windows- Activate Meldungen aus der Visual Studio-Umgebung.

OnApply(DialogPage+PageApplyEventArgs)

Verarbeitet Apply Nachrichten aus der Visual Studio-Umgebung.

OnClosed(EventArgs)

Verarbeitet Close Nachrichten aus der Visual Studio-Umgebung.

OnDeactivate(CancelEventArgs)

Verarbeitet Deactive Nachrichten aus der Visual Studio-Umgebung.

ResetSettings()

Sollte überschrieben werden, um Einstellungen auf die Standardwerte zurückzusetzen.

SaveSetting(PropertyDescriptor)
SaveSettingsToStorage()

Wird von Visual Studio aufgerufen, um die Einstellungen einer Dialogfeldseite im lokalen Speicher, in der Regel die Registrierung, zu speichern.

SaveSettingsToXml(IVsSettingsWriter)

Wird von Visual Studio aufgerufen, um die Einstellungen einer Dialogfeld Seite im Speicher der Visual Studio-Einstellungen auf der Festplatte zu speichern.

Explizite Schnittstellenimplementierungen

IWin32Window.Handle

Gilt für