NestedContainer NestedContainer NestedContainer NestedContainer Class

Définition

Fournit l'implémentation de base pour l'interface INestedContainer qui permet aux conteneurs d'avoir un composant propriétaire.Provides the base implementation for the INestedContainer interface, which enables containers to have an owning component.

public ref class NestedContainer : System::ComponentModel::Container, IDisposable, System::ComponentModel::INestedContainer
public class NestedContainer : System.ComponentModel.Container, IDisposable, System.ComponentModel.INestedContainer
type NestedContainer = class
    inherit Container
    interface INestedContainer
    interface IContainer
    interface IDisposable
Public Class NestedContainer
Inherits Container
Implements IDisposable, INestedContainer
Héritage
NestedContainerNestedContainerNestedContainerNestedContainer
Implémente

Remarques

La NestedContainer classe est une implémentation simple de l' INestedContainer interface, qui définit un composant qui contient logiquement zéro, un ou plusieurs autres composants et qui appartient à un composant parent.The NestedContainer class is a simple implementation of the INestedContainer interface, which defines a component that logically contains zero or more other components and is owned by a parent component. Le comportement des conteneurs imbriqués diffère d’une norme Container de plusieurs façons, notamment les suivantes:The behavior of nested containers differs from a standard Container in a number of ways, including the following:

  • Les caractéristiques du site DesignMode , GetService telles que et, sont acheminées via le site du composant propriétaire.Site characteristics such as DesignMode and GetService are routed through the owning component's site.

  • La propriété du Name site est un nom qualifié qui comprend le nom du composant propriétaire suivi d’un point (.) et du nom du composant enfant.The site's Name property is a qualified name that includes the owning component's name followed by a period (.) and the child component's name.

  • GetServiceprend en charge le INestedContainer en tant que service.GetService provides support for the INestedContainer as a service.

  • Lorsque le composant propriétaire est supprimé, le conteneur est également supprimé.When the owning component is disposed, the container is disposed as well.

En outre, les concepteurs traitent les conteneurs imbriqués différemment.In addition, designers treat nested containers differently. Un hôte de concepteur n’est intéressé que par un seul conteneur, celui qui est associé à l’hôte.A designer host is only interested in one container - the one associated with the host. Par conséquent, les événements d’ajout et de suppression de composants ne sont pas déclenchés lorsqu’un composant est ajouté ou supprimé d’un conteneur imbriqué.Therefore, component add and remove events are not raised when a component is added to or removed from a nested container. Toutefois, étant donné que les services sont transmis au conteneur imbriqué, les événements de modification de composant sont déclenchés quand un composant d’un conteneur imbriqué est modifié.However, because services flow through to the nested container, component change events are raised when a component in a nested container is changed.

Cette disparité dans le suivi des événements a également un impact sur la fonctionnalité d’annulation, qui est étroitement liée à la sérialisation.This disparity in event tracking also impacts undo functionality, which is closely tied to serialization. Le moteur d’annulation standard IReferenceService utilise pour effectuer le suivi des modifications apportées aux composants.The standard undo engine uses IReferenceService to track changes made to components. Si le moteur d’annulation ne peut pas identifier un nom pour un composant par le biais du service de référence, le moteur ignore les modifications apportées à ce composant.If the undo engine cannot identify a name for a component through the reference service, the engine will ignore any changes for that component. Ce service reconnaît automatiquement les modifications apportées aux composants contenus uniquement s’ils sont exposés en tant que propriétés en lecture seule publiques portant le même nom dans leurs propriétaires.This service automatically recognizes changes to contained components only if they are exposed as public read-only properties of the same name in their owners. Dans le cas contraire, le développeur doit passer des événements de modification de composant jusqu’au propriétaire.Otherwise, the developer must pass component change events up to the owner. Par exemple, Text si la propriété d’un composant imbriqué est redéfinie sur son composant propriétaire Address en tant que propriété, lorsque Text la propriété est modifiée, une modification de propriété doit Address être effectuée par programmation pour l’élément la propriété ou la modification n’est pas suivie par Undo.For example, if a nested component's Text property is resurfaced on its owning component as an Address property, when the Text property is changed, a property change must be programmatically made for the corresponding Address property or else that change will not be tracked by undo.

Constructeurs

NestedContainer(IComponent) NestedContainer(IComponent) NestedContainer(IComponent) NestedContainer(IComponent)

Initialise une nouvelle instance de la classe NestedContainer.Initializes a new instance of the NestedContainer class.

Propriétés

Components Components Components Components

Obtient tous les composants du Container.Gets all the components in the Container.

(Inherited from Container)
Owner Owner Owner Owner

Obtient le composant propriétaire pour ce conteneur imbriqué.Gets the owning component for this nested container.

OwnerName OwnerName OwnerName OwnerName

Obtient le nom du composant propriétaire.Gets the name of the owning component.

Méthodes

Add(IComponent) Add(IComponent) Add(IComponent) Add(IComponent)

Ajoute le Component spécifié à Container.Adds the specified Component to the Container. Le composant est sans nom.The component is unnamed.

(Inherited from Container)
Add(IComponent, String) Add(IComponent, String) Add(IComponent, String) Add(IComponent, String)

Ajoute le Component spécifié à Container et lui assigne un nom.Adds the specified Component to the Container and assigns it a name.

(Inherited from Container)
CreateSite(IComponent, String) CreateSite(IComponent, String) CreateSite(IComponent, String) CreateSite(IComponent, String)

Crée un site pour le composant dans le conteneur.Creates a site for the component within the container.

Dispose() Dispose() Dispose() Dispose()

Libère toutes les ressources utilisées par Container.Releases all resources used by the Container.

(Inherited from Container)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Libère les ressources utilisées par le conteneur imbriqué.Releases the resources used by the nested container.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Inherited from Object)
GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Obtient l'objet service éventuel du type spécifié.Gets the service object of the specified type, if it is available.

GetType() GetType() GetType() GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Inherited from Object)
Remove(IComponent) Remove(IComponent) Remove(IComponent) Remove(IComponent)

Supprime un composant de Container.Removes a component from the Container.

(Inherited from Container)
RemoveWithoutUnsiting(IComponent) RemoveWithoutUnsiting(IComponent) RemoveWithoutUnsiting(IComponent) RemoveWithoutUnsiting(IComponent)

Supprime un composant de Container sans affecter à Site la valeur null.Removes a component from the Container without setting Site to null.

(Inherited from Container)
ToString() ToString() ToString() ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Inherited from Object)
ValidateName(IComponent, String) ValidateName(IComponent, String) ValidateName(IComponent, String) ValidateName(IComponent, String)

Détermine si le nom du composant est unique pour ce conteneur.Determines whether the component name is unique for this container.

(Inherited from Container)

S’applique à

Voir aussi