Sdílet prostřednictvím


NestedContainer Třída

Definice

Poskytuje základní implementaci INestedContainer rozhraní, která umožňuje kontejnerům mít vlastnící komponentu.

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
Dědičnost
NestedContainer
Implementuje

Poznámky

Třída NestedContainer je jednoduchá implementace INestedContainer rozhraní, která definuje komponentu, která logicky obsahuje nula nebo více jiných komponent a je vlastněna nadřazenou komponentou. Chování vnořených kontejnerů se od standardu Container liší mnoha způsoby, včetně následujících:

  • Charakteristiky lokality, jako DesignMode jsou a GetService , se směrují přes lokalitu vlastnící komponenty.

  • Vlastnost webu Name je kvalifikovaný název, který obsahuje název vlastnící komponenty následovaný tečkou (.) a názvem podřízené komponenty.

  • GetService poskytuje podporu pro INestedContainer jako službu.

  • Při odstranění vlastnící komponenty se odstraní i kontejner.

Návrháři navíc zacházejí s vnořenými kontejnery odlišně. Hostitel návrháře má zájem pouze o jeden kontejner – ten, který je přidružený k hostiteli. Proto se při přidání nebo odebrání komponenty do vnořeného kontejneru nevyvolají události přidání a odebrání komponenty. Vzhledem k tomu, že služby procházejí do vnořeného kontejneru, jsou při změně komponenty ve vnořeném kontejneru vyvolány události změn komponent.

Tento rozdíl ve sledování událostí také ovlivňuje funkci vrácení zpět, která je úzce svázána se serializací. Standardní modul pro vrácení zpět používá IReferenceService ke sledování změn provedených v komponentách. Pokud modul pro vrácení zpět nedokáže identifikovat název komponenty prostřednictvím referenční služby, bude ignorovat všechny změny této komponenty. Tato služba automaticky rozpozná změny obsažených součástí pouze v případě, že jsou u svých vlastníků zpřístupněny jako veřejné vlastnosti jen pro čtení se stejným názvem. V opačném případě musí vývojář předat události změn komponent vlastníkovi. Pokud se například vlastnost vnořené komponenty Text znovu objeví na vlastní komponentě jako Address vlastnost, při Text změně vlastnosti musí být změna vlastnosti provedena programově pro odpovídající Address vlastnost, jinak tato změna nebude sledována vrácením zpět.

Konstruktory

NestedContainer(IComponent)

Inicializuje novou instanci NestedContainer třídy .

Vlastnosti

Components

Získá všechny komponenty v objektu Container.

(Zděděno od Container)
Owner

Získá vlastní komponentu pro tento vnořený kontejner.

OwnerName

Získá název vlastnící součásti.

Metody

Add(IComponent)

Přidá zadaný Component parametr do .Container Komponenta není pojmenována.

(Zděděno od Container)
Add(IComponent, String)

Přidá zadaný Component parametr do Container a přiřadí mu název.

(Zděděno od Container)
CreateSite(IComponent, String)

Vytvoří lokalitu pro komponentu v rámci kontejneru.

Dispose()

Uvolní všechny prostředky používané nástrojem Container.

(Zděděno od Container)
Dispose(Boolean)

Uvolní prostředky používané vnořeným kontejnerem.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetService(Type)

Získá objekt služby zadaného typu, pokud je k dispozici.

GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
Remove(IComponent)

Odebere komponentu z objektu Container.

(Zděděno od Container)
RemoveWithoutUnsiting(IComponent)

Odebere komponentu z objektu Container bez nastavení Site na null.

(Zděděno od Container)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
ValidateName(IComponent, String)

Určuje, zda je název komponenty pro tento kontejner jedinečný.

(Zděděno od Container)

Platí pro

Viz také