DesignSurface Klasse

Definition

Stellt eine Benutzeroberfläche zum Entwerfen von Komponenten dar.

public ref class DesignSurface : IDisposable, IServiceProvider
public class DesignSurface : IDisposable, IServiceProvider
[System.Security.SecurityCritical]
public class DesignSurface : IDisposable, IServiceProvider
type DesignSurface = class
    interface IDisposable
    interface IServiceProvider
[<System.Security.SecurityCritical>]
type DesignSurface = class
    interface IDisposable
    interface IServiceProvider
Public Class DesignSurface
Implements IDisposable, IServiceProvider
Vererbung
DesignSurface
Attribute
Implementiert

Hinweise

Die DesignSurface Klasse implementiert, was der Benutzer als Designer wahrnimmt. DesignSurface ist die Benutzeroberfläche, die der Benutzer bearbeitet, um Entwurfszeitfeatures zu ändern. DesignSurface bietet eine völlig eigenständige Designoberfläche.

Die DesignSurface Klasse kann als eigenständiger Designer verwendet werden, oder es kann mit der DesignSurfaceManager Klasse gekoppelt werden, um eine gemeinsame Implementierung für eine Anwendung bereitzustellen, die mehrere DesignSurface Objekte hostt.

Die DesignSurface Klasse kann selbst verwendet werden, oder der Benutzer kann eine neue Klasse daraus ableiten und das Verhalten erweitern.

Die DesignSurface Klasse stellt automatisch mehrere Entwurfszeitdienste bereit. Die DesignSurface Klasse fügt alle dienste im Konstruktor hinzu. Die meisten dieser Dienste können überschrieben werden, indem sie in der geschützten ServiceContainer Eigenschaft ersetzt werden. Um einen Dienst zu ersetzen, überschreiben Sie den Konstruktor, die Aufrufbasis, und nehmen Sie alle Änderungen über die geschützte ServiceContainer Eigenschaft vor. Alle Dienste, die dem Dienstcontainer hinzugefügt werden und die implementiert IDisposable werden, werden gelöscht, wenn die Entwurfsoberfläche entfernt wird. Der Standardsatz von austauschbaren Diensten, die die DesignSurface Klasse bereitstellt, wird in der folgenden Tabelle angezeigt.

Dienst BESCHREIBUNG
IExtenderProviderService Aktiviert Objekte, die nicht Teil der Komponentensammlung des Containers sind, um eigene Extenderanbieter bereitzustellen.
IExtenderListService Wird verwendet, TypeDescriptor um eine Liste der Extenderanbieter abzurufen. Mit diesem Dienst können Extenderanbieter außerhalb des Containers leben.
ITypeDescriptorFilterService Stellt Designermetadaten-Hooks bereit. Dies ist die primäre Schnittstelle für die Metadatenfilterung.
ISelectionService Bietet eine Möglichkeit zum Auswählen von Komponenten im Designer.
IReferenceService Bietet eine Möglichkeit, einen Namen für Objekte abzurufen, auch wenn diese Objekte nicht websitet werden.
DesignSurface Bietet die Designoberfläche selbst als Service an.
DesignerOptionService Stellt eine Basisklasse für Abruf und Festlegung von Optionswerten für einen Designer bereit.

In der folgenden Tabelle sind die nicht ersetzenden Dienste aufgeführt, die standardmäßig bereitgestellt werden.

Dienst BESCHREIBUNG
IComponentChangeService Löst Ereignisse aus, wenn Änderungen an Komponenten vorgenommen werden.
IDesignerHost Steuert den Zugriff auf Typen, Dienste und Transaktionen. Primäre Schnittstelle für Designer.
IContainer Besitzt den Satz von Komponenten, die entworfen werden. Jeder Designer verfügt über eine IContainer Komponente, die die Komponenten besitzt.
IServiceContainer IServiceProvider Abgeleitet von und bietet eine Möglichkeit zum Hinzufügen und Entfernen von Diensten aus dem Designer.

Zusätzlich zu diesen Diensten stellt die DesignSurface Klasse auch einen einzelnen Dienst bereit, der über die Website einer Komponente verfügbar ist. Dieser Dienst ist für jede Komponente eindeutig. In der folgenden Tabelle sind die Dienste aufgeführt, die nicht ersetzt werden können.

Dienst BESCHREIBUNG
IDictionaryService Ein generisches Wörterbuch mit Schlüssel-Wert-Paaren, das zum Speichern beliebiger Daten zu einer Komponente verwendet werden kann.
INestedContainer Ein Container, der es einer Komponente ermöglicht, dem Designer zusätzliche untergeordnete Komponenten hinzuzufügen. Diese Komponenten sind Teil der Entwurfsoberfläche, nehmen jedoch nicht an der Serialisierung teil. Dies ist nützlich, wenn Sie ein Steuerelement entwerfen möchten, das in der Lage ist, einen Bereich selbst in einem Designer verfügbar zu machen, aber Sie möchten nicht, dass die Region an der Serialisierung teilnimmt.

Zusätzlich dazu ISiteimplementiert die Website auch die folgenden Schnittstellen.

Achtung

Überprüfen Sie, ob diese Schnittstellen vorhanden sind, anstatt eine diskriminierungslose Umwandlung zu verwenden, da andere Websiteimplementierungen sie möglicherweise nicht implementieren.

Dienst BESCHREIBUNG
IServiceContainer Bietet eine Möglichkeit, zum Container von standortspezifischen Diensten zu gelangen. Beispielsweise IDictionaryService handelt es sich um einen websitespezifischen Dienst. Mit diesem Dienst können Sie zusätzliche websitespezifische Dienste hinzufügen.

Konstruktoren

DesignSurface()

Initialisiert eine neue Instanz der DesignSurface-Klasse.

DesignSurface(IServiceProvider)

Initialisiert eine neue Instanz der DesignSurface-Klasse.

DesignSurface(IServiceProvider, Type)

Initialisiert eine neue Instanz der DesignSurface-Klasse.

DesignSurface(Type)

Initialisiert eine neue Instanz der DesignSurface-Klasse.

Eigenschaften

ComponentContainer

Ruft die IContainer-Implementierung innerhalb der Entwurfsoberfläche ab.

DtelLoading

Ruft einen Wert ab, der angibt, ob die Entwurfszeitfehlerliste geladen wird.

IsLoaded

Ruft einen Wert ab, der angibt, ob die Entwurfsoberfläche gegenwärtig geladen ist.

LoadErrors

Gibt eine Auflistung von während des Ladevorgangs aufgetretenen Fehlern oder eine leere Auflistung zurück.

ServiceContainer

Ruft den Dienstcontainer ab.

View

Ruft die Ansicht für den Stammdesigner ab.

Methoden

BeginLoad(DesignerLoader)

Beginnt den Ladevorgang mit dem angegebenen Designerladeprogramm.

BeginLoad(Type)

Beginnt den Ladevorgang.

CreateComponent(Type)
Veraltet.

Erstellt eine Instanz einer Komponente.

CreateDesigner(IComponent, Boolean)

Erstellt einen Designer, wenn dem Container eine Komponente hinzugefügt wird.

CreateInstance(Type)

Erstellt eine Instanz des angegebenen Typs.

CreateNestedContainer(IComponent)

Erstellt einen für die Schachtelung von Steuerelementen oder Komponenten geeigneten Container.

CreateNestedContainer(IComponent, String)

Erstellt einen für die Schachtelung von Steuerelementen oder Komponenten geeigneten Container.

Dispose()

Gibt die von der DesignSurface verwendeten Ressourcen frei.

Dispose(Boolean)

Gibt die von der DesignSurface verwendeten Ressourcen frei.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
Flush()

Serialisiert an der Entwurfsoberfläche vorgenommene Änderungen.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetService(Type)

Ruft einen Dienst vom Dienstcontainer ab.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
OnLoaded(LoadedEventArgs)

Löst das Loaded-Ereignis aus.

OnLoading(EventArgs)

Löst das Loading-Ereignis aus.

OnUnloaded(EventArgs)

Löst das Unloaded-Ereignis aus.

OnUnloading(EventArgs)

Löst das Unloading-Ereignis aus.

OnViewActivate(EventArgs)

Löst das ViewActivated-Ereignis aus.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Ereignisse

Disposed

Tritt auf, wenn die Entwurfsoberfläche verworfen wird.

Flushed

Tritt auf, wenn die Flush()-Methode von DesignSurface aufgerufen wird.

Loaded

Tritt auf, wenn der Ladevorgang des Designers abgeschlossen wurde.

Loading

Tritt auf, wenn der Designer gerade geladen wird.

Unloaded

Tritt auf, wenn ein Designer vollständig entladen wurde.

Unloading

Tritt auf, wenn ein Designer gerade entladen wird.

ViewActivated

Tritt auf, wenn die Activate()-Methode für IDesignerHost aufgerufen wurde.

Gilt für:

Siehe auch