NestedContainer クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
コンテナーが所有するコンポーネントを持つことができるようにする、 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.INestedContainer
public class NestedContainer : System.ComponentModel.Container, System.ComponentModel.INestedContainer
type NestedContainer = class
inherit Container
interface INestedContainer
interface IContainer
interface IDisposable
type NestedContainer = class
inherit Container
interface IContainer
interface IDisposable
interface INestedContainer
Public Class NestedContainer
Inherits Container
Implements IDisposable, INestedContainer
Public Class NestedContainer
Inherits Container
Implements INestedContainer
- 継承
- 実装
注釈
NestedContainer クラスは、0 個以上の他のコンポーネントを論理的に含み、親コンポーネントによって所有されるコンポーネントを定義する、INestedContainer インターフェイスの単純な実装です。 入れ子になったコンテナーの動作は、次のようなさまざまな点で標準の Container とは異なります。
DesignModeやGetServiceなどのサイト特性は、所有コンポーネントのサイトを介してルーティングされます。
サイトの Name プロパティは、所有コンポーネントの名前の後にピリオド (.) と子コンポーネントの名前が続く修飾名です。
GetService は、サービスとしての INestedContainer のサポートを提供します。
所有コンポーネントが破棄されると、コンテナーも破棄されます。
さらに、デザイナーは入れ子になったコンテナーを異なる方法で扱います。 デザイナー ホストは、1 つのコンテナー (ホストに関連付けられているコンテナー) にのみ関心があります。 そのため、コンポーネントの追加と削除のイベントは、入れ子になったコンテナーにコンポーネントが追加または削除されるときに発生しません。 ただし、サービスは入れ子になったコンテナーに流れるので、入れ子になったコンテナー内のコンポーネントが変更されると、コンポーネント変更イベントが発生します。
イベント追跡でのこの不一貫性は、シリアル化に密接に関連する元に戻す機能にも影響します。 標準の元に戻すエンジンでは、 IReferenceService を使用してコンポーネントに加えられた変更を追跡します。 元に戻すエンジンが参照サービスを通じてコンポーネントの名前を識別できない場合、エンジンはそのコンポーネントの変更を無視します。 このサービスは、所有者に同じ名前のパブリック読み取り専用プロパティとして公開されている場合にのみ、包含コンポーネントに対する変更を自動的に認識します。 それ以外の場合、開発者はコンポーネント変更イベントを所有者に渡す必要があります。 たとえば、入れ子になったコンポーネントの Text プロパティが、その所有コンポーネントで Address プロパティとして再表示される場合、 Text プロパティが変更されたときに、対応する Address プロパティに対してプロパティの変更をプログラムで行う必要があります。それ以外の場合、変更は元に戻しても追跡されません。
コンストラクター
| 名前 | 説明 |
|---|---|
| NestedContainer(IComponent) |
NestedContainer クラスの新しいインスタンスを初期化します。 |
プロパティ
| 名前 | 説明 |
|---|---|
| Components |
Container内のすべてのコンポーネントを取得します。 (継承元 Container) |
| Owner |
この入れ子になったコンテナーの所有コンポーネントを取得します。 |
| OwnerName |
所有するコンポーネントの名前を取得します。 |
メソッド
| 名前 | 説明 |
|---|---|
| Add(IComponent, String) |
指定した Component を Container に追加し、名前を割り当てます。 (継承元 Container) |
| Add(IComponent) |
指定した Component を Containerに追加します。 コンポーネントに名前が付いていない。 (継承元 Container) |
| CreateSite(IComponent, String) |
コンテナー内のコンポーネントのサイトを作成します。 |
| Dispose() |
Containerによって使用されるすべてのリソースを解放します。 (継承元 Container) |
| Dispose(Boolean) |
入れ子になったコンテナーによって使用されるリソースを解放します。 |
| Equals(Object) |
指定したオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
| GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
| GetService(Type) |
指定した型のサービス オブジェクトを取得します (使用可能な場合)。 |
| GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
| MemberwiseClone() |
現在の Objectの簡易コピーを作成します。 (継承元 Object) |
| Remove(IComponent) |
Containerからコンポーネントを削除します。 (継承元 Container) |
| RemoveWithoutUnsiting(IComponent) |
ContainerをSiteに設定せずに、 |
| ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
| ValidateName(IComponent, String) |
コンポーネント名がこのコンテナーに対して一意かどうかを判断します。 (継承元 Container) |