Freigeben über


NestedContainer Klasse

Definition

Stellt die Basisimplementierung für die INestedContainer-Schnittstelle bereit, die es Containern ermöglicht, über eine besitzende Komponente zu verfügen.

public ref class NestedContainer : System::ComponentModel::Container, IDisposable, System::ComponentModel::IContainer, System::ComponentModel::INestedContainer
public ref class NestedContainer : System::ComponentModel::Container, IDisposable, System::ComponentModel::INestedContainer
public ref class NestedContainer : System::ComponentModel::Container, System::ComponentModel::INestedContainer
public class NestedContainer : System.ComponentModel.Container, IDisposable, System.ComponentModel.IContainer, System.ComponentModel.INestedContainer
public class NestedContainer : System.ComponentModel.Container, IDisposable, System.ComponentModel.INestedContainer
public class NestedContainer : System.ComponentModel.Container, System.ComponentModel.INestedContainer
type NestedContainer = class
    inherit Container
    interface IContainer
    interface IDisposable
    interface INestedContainer
type NestedContainer = class
    inherit Container
    interface INestedContainer
    interface IContainer
    interface IDisposable
Public Class NestedContainer
Inherits Container
Implements IContainer, IDisposable, INestedContainer
Public Class NestedContainer
Inherits Container
Implements IDisposable, INestedContainer
Public Class NestedContainer
Inherits Container
Implements INestedContainer
Vererbung
NestedContainer
Implementiert

Hinweise

Die NestedContainer -Klasse ist eine einfache Implementierung der INestedContainer -Schnittstelle, die eine Komponente definiert, die logisch null oder mehr andere Komponenten enthält und sich im Besitz einer übergeordneten Komponente befindet. Das Verhalten von geschachtelten Containern unterscheidet sich von einem Standard Container auf verschiedene Arten, einschließlich der folgenden:

  • Standortmerkmale wie DesignMode und GetService werden über die Website der besitzenden Komponente weitergeleitet.

  • Die Eigenschaft der Website ist ein qualifizierter Name Name, der den Namen der besitzenden Komponente gefolgt von einem Punkt (.) und dem Namen der untergeordneten Komponente enthält.

  • GetService bietet Unterstützung für as INestedContainer a Service.

  • Wenn die besitzende Komponente verworfen wird, wird auch der Container verworfen.

Darüber hinaus behandeln Designer geschachtelte Container unterschiedlich. Ein Designerhost ist nur an einem Container interessiert– dem, der dem Host zugeordnet ist. Daher werden Add- und Remove-Ereignisse von Komponenten nicht ausgelöst, wenn eine Komponente einem geschachtelten Container hinzugefügt oder daraus entfernt wird. Da Dienste jedoch in den geschachtelten Container fließen, werden Komponentenänderungsereignisse ausgelöst, wenn eine Komponente in einem geschachtelten Container geändert wird.

Diese Ungleichheit bei der Ereignisnachverfolgung wirkt sich auch auf die Rückgängig-Funktionalität aus, die eng mit der Serialisierung verbunden ist. Die Standardmäßige Rückgängig-Engine verwendet IReferenceService , um Änderungen an Komponenten nachzuverfolgen. Wenn die Rückgängig-Engine keinen Namen für eine Komponente über den Verweisdienst identifizieren kann, ignoriert die Engine alle Änderungen für diese Komponente. Dieser Dienst erkennt Änderungen an enthaltenen Komponenten nur dann automatisch, wenn sie in ihren Besitzern als öffentliche schreibgeschützte Eigenschaften desselben Namens verfügbar gemacht werden. Andernfalls muss der Entwickler Komponentenänderungsereignisse an den Besitzer übergeben. Wenn z. B. die Eigenschaft einer geschachtelten Komponente Text für die eigene Komponente als Eigenschaft Address erneut angezeigt wird, muss beim Ändern der Text Eigenschaft programmgesteuert eine Eigenschaftsänderung für die entsprechende Address Eigenschaft vorgenommen werden, andernfalls wird diese Änderung nicht durch rückgängig nachverfolgt.

Konstruktoren

NestedContainer(IComponent)

Initialisiert eine neue Instanz der NestedContainer-Klasse.

Eigenschaften

Components

Ruft alle Komponenten im Container ab.

(Geerbt von Container)
Owner

Ruft die besitzende Komponente für diesen geschachtelten Container ab.

OwnerName

Ruft den Namen der besitzenden Komponente ab.

Methoden

Add(IComponent)

Fügt dem Component die angegebene Container hinzu. Die Komponente hat keinen Namen.

(Geerbt von Container)
Add(IComponent, String)

Fügt dem Component die angegebene Container hinzu und weist ihr einen Namen zu.

(Geerbt von Container)
CreateSite(IComponent, String)

Erstellt eine Site für die Komponente im Container.

Dispose()

Gibt alle vom Container verwendeten Ressourcen frei.

(Geerbt von Container)
Dispose(Boolean)

Gibt die vom geschachtelten Container verwendeten Ressourcen frei.

Equals(Object)

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

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetService(Type)

Ruft das Dienstobjekt des angegebenen Typs ab, sofern es verfügbar ist.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
Remove(IComponent)

Entfernt eine Komponente aus dem Container.

(Geerbt von Container)
RemoveWithoutUnsiting(IComponent)

Entfernt eine Komponente aus dem Container, ohne Site auf null festzulegen.

(Geerbt von Container)
ToString()

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

(Geerbt von Object)
ValidateName(IComponent, String)

Bestimmt, ob der Komponentenname in diesem Container eindeutig ist.

(Geerbt von Container)

Gilt für:

Weitere Informationen