NestedContainer NestedContainer NestedContainer NestedContainer Class

定義

INestedContainer インターフェイスの基本実装を提供し、コンテナーが所有コンポーネントを持つことができるようにします。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
継承
NestedContainerNestedContainerNestedContainerNestedContainer
実装

注釈

NestedContainerクラスは、単純な実装のINestedContainerを論理的に 0 個以上の他のコンポーネントが含まれていて、親コンポーネントが所有するコンポーネントを定義するインターフェイス。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. 入れ子になったコンテナーの動作は、標準によって異なります。Containerさまざま方法で、次を含みます。The behavior of nested containers differs from a standard Container in a number of ways, including the following:

  • などの特性をサイトDesignModeGetService所有しているコンポーネントのサイトを介してルーティングされます。Site characteristics such as DesignMode and GetService are routed through the owning component's site.

  • サイトのNameプロパティは、所有しているコンポーネントの名の後にピリオド (.) と子コンポーネントの名前を含む修飾名。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.

  • GetService サポートを提供します、INestedContainerサービスとして。GetService provides support for the INestedContainer as a service.

  • 所有しているコンポーネントが破棄されたときに、コンテナーも破棄されます。When the owning component is disposed, the container is disposed as well.

さらに、デザイナーは入れ子になったコンテナーを異なる方法で処理します。In addition, designers treat nested containers differently. 1 つのコンテナーのホストに関連付けられている 1 つはデザイナーのホストのみです。A designer host is only interested in one container - the one associated with the host. そのため、コンポーネントの追加し、イベントを削除、コンポーネントを追加または入れ子になったコンテナーから削除されたときに発生しません。Therefore, component add and remove events are not raised when a component is added to or removed from a nested container. ただし、サービスが入れ子になったコンテナーを通過するので、入れ子になったコンテナー内のコンポーネントが変更されたときにコンポーネントの変更イベントが発生します。However, because services flow through to the nested container, component change events are raised when a component in a nested container is changed.

イベントの追跡にこのような違いは、シリアル化に密接に関連付けられている、元に戻す機能にも影響を与えます。This disparity in event tracking also impacts undo functionality, which is closely tied to serialization. 標準のアンドゥ エンジンを使用してIReferenceServiceコンポーネントに加えられた変更を追跡するためにします。The standard undo engine uses IReferenceService to track changes made to components. アンドゥ エンジンが参照サービスを介して、コンポーネントの名前を識別できない場合、エンジンはそのコンポーネントに対する変更内容を無視します。If the undo engine cannot identify a name for a component through the reference service, the engine will ignore any changes for that component. このサービスでは、その所有者に同じ名前のパブリックの読み取り専用プロパティとして公開されている場合にのみ含まれるコンポーネントへの変更が自動的に認識されます。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. それ以外の場合、開発者は、所有者の役割のコンポーネントの変更イベントを渡す必要があります。Otherwise, the developer must pass component change events up to the owner. たとえば、入れ子になったコンポーネントのTextとしてその所有コンポーネントのプロパティが示される、Addressプロパティ、Textプロパティが変更された、プロパティの変更を対応するプログラムで行う必要がありますAddress変更するか、またはプロパティは、元に戻すによって追跡されません。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.

コンストラクター

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

NestedContainer クラスの新しいインスタンスを初期化します。Initializes a new instance of the NestedContainer class.

プロパティ

Components Components Components Components

Container 内のすべてのコンポーネントを取得します。Gets all the components in the Container.

(Inherited from Container)
Owner Owner Owner Owner

この入れ子になったコンテナーの所有コンポーネントを取得します。Gets the owning component for this nested container.

OwnerName OwnerName OwnerName OwnerName

所有コンポーネントの名前を取得します。Gets the name of the owning component.

メソッド

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

指定した ComponentContainer に追加します。Adds the specified Component to the Container. コンポーネントに名前が付いていません。The component is unnamed.

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

指定した ComponentContainer に追加し、名前を割り当てます。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)

コンテナー内にコンポーネント用のサイトを作成します。Creates a site for the component within the container.

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

Container によって使用されているすべてのリソースを解放します。Releases all resources used by the Container.

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

入れ子になったコンテナーによって使用されているリソースを解放します。Releases the resources used by the nested container.

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

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

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

既定のハッシュ関数として機能します。Serves as the default hash function.

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

指定した型のサービス オブジェクトがある場合は、そのオブジェクトを取得します。Gets the service object of the specified type, if it is available.

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

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

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

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

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

Container からコンポーネントを削除します。Removes a component from the Container.

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

Containernull を設定しないで、Site からコンポーネントを削除します。Removes a component from the Container without setting Site to null.

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

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

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

コンポーネント名がこのコンテナーで一意であるかどうかを判断します。Determines whether the component name is unique for this container.

(Inherited from Container)

適用対象

こちらもご覧ください