NestedContainer クラス
アセンブリ: System (system.dll 内)

Public Class NestedContainer Inherits Container Implements INestedContainer, IContainer, IDisposable
public class NestedContainer : Container, INestedContainer, IContainer, IDisposable
public class NestedContainer extends Container implements INestedContainer, IContainer, IDisposable
public class NestedContainer extends Container implements INestedContainer, IContainer, IDisposable

NestedContainer クラスは、INestedContainer インターフェイスの単純な実装です。このクラスは、論理上 0 個以上の他のコンポーネントを格納し、親コンポーネントによって所有されるコンポーネントを定義します。入れ子になったコンテナの動作は、次のような多くの点で標準の Container とは異なります。
また、デザイナは入れ子になったコンテナを異なる方法で取り扱います。デザイナ ホストは、1 つのコンテナ (そのホストに関連付けられたコンテナ) のみを対象とします。したがって、入れ子になったコンテナにコンポーネントが追加されたり削除されたりしても、コンポーネントの追加イベントおよび削除イベントは発生しません。ただし、サービスは入れ子になったコンテナに流れるため、入れ子になったコンテナ内のコンポーネントが変更されると、コンポーネントの変更イベントが発生します。
イベント追跡におけるこの違いは、シリアル化と密接な関係がある元に戻す機能にも影響を与えます。標準のアンドゥ エンジンは、IReferenceService を使用して、コンポーネントに加えられた変更を追跡します。アンドゥ エンジンが参照サービスによってコンポーネントの名前を識別できない場合、エンジンはそのコンポーネントに加えられた変更をすべて無視します。このサービスは、格納されているコンポーネントがその所有コンポーネント内で同じ名前の読み取り専用のパブリック プロパティとして公開されている場合のみ、これらのコンポーネントに加えられた変更を自動的に認識します。それ以外の場合は、開発者がコンポーネントの変更イベントをその所有コンポーネントに渡す必要があります。たとえば、入れ子になったコンポーネントの Text プロパティが、その所有コンポーネントでは Address プロパティとして示される場合、Text プロパティが変更されると、対応する Address プロパティに対してプログラムによってプロパティ変更を行う必要があります。この処理を行わないと、アンドゥ エンジンはこの変更を追跡しません。
![]() |
---|
このクラスに適用される HostProtectionAttribute 属性の Resources プロパティの値は、SharedState です。HostProtectionAttribute は、デスクトップ アプリケーション (一般的には、アイコンをダブルクリック、コマンドを入力、またはブラウザに URL を入力して起動するアプリケーション) には影響しません。詳細については、HostProtectionAttribute クラスのトピックまたは「SQL Server プログラミングとホスト保護属性」を参照してください。 |

System.ComponentModel.Container
System.ComponentModel.NestedContainer


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- NestedContainer クラスのページへのリンク