次の方法で共有


PropertyDescriptorCollection クラス

PropertyDescriptor オブジェクトのコレクションを表します。

名前空間: System.ComponentModel
アセンブリ: System (system.dll 内)

構文

'宣言
Public Class PropertyDescriptorCollection
    Implements IList, IDictionary, ICollection, IEnumerable
'使用
Dim instance As PropertyDescriptorCollection
public class PropertyDescriptorCollection : IList, IDictionary, ICollection, 
    IEnumerable
public ref class PropertyDescriptorCollection : IList, IDictionary, ICollection, 
    IEnumerable
public class PropertyDescriptorCollection implements IList, IDictionary, 
    ICollection, IEnumerable
public class PropertyDescriptorCollection implements IList, IDictionary, 
    ICollection, IEnumerable

解説

PropertyDescriptorCollection は読み取り専用であり、プロパティの追加または削除を行うためのメソッドは実装していません。これらのメソッドを実装するには、このクラスから継承する必要があります。

PropertyDescriptorCollection クラスで利用できるプロパティを使用して、コレクションに対してその内容を照会できます。コレクション内の要素の数を確認するには、Count プロパティを使用します。インデックス番号または名前で指定したプロパティを取得するには、Item プロパティを使用します。

プロパティのほかにも、Find メソッドを使用して、指定した名前を持つプロパティの説明をコレクションから取得することもできます。

注意

このクラスに適用される HostProtectionAttribute 属性の Resources プロパティの値は、Synchronization です。HostProtectionAttribute は、デスクトップ アプリケーション (一般的には、アイコンをダブルクリック、コマンドを入力、またはブラウザに URL を入力して起動するアプリケーション) には影響しません。詳細については、HostProtectionAttribute クラスのトピックまたは「SQL Server プログラミングとホスト保護属性」を参照してください。

使用例

button1 のプロパティを使用して、新しい PropertyDescriptorCollection を作成するコード例を次に示します。この例では、button1 がフォーム上でインスタンス化されていることが必要です。

Dim properties As PropertyDescriptorCollection = TypeDescriptor.GetProperties(button1)
PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(button1);
PropertyDescriptorCollection^ properties = TypeDescriptor::GetProperties( button1 );
PropertyDescriptorCollection properties = 
    TypeDescriptor.GetProperties(button1);

ボタンに関するすべてのプロパティをテキスト ボックスに出力する例を次に示します。この例では、button1textBox1 がフォーム上でインスタンス化されていることが必要です。

Private Sub MyPropertyCollection()
    ' Creates a new collection and assign it the properties for button1.
    Dim properties As PropertyDescriptorCollection = TypeDescriptor.GetProperties(button1)
    
    ' Displays each property in the collection in a text box.
    Dim myProperty As PropertyDescriptor
    For Each myProperty In  properties
        textBox1.Text &= myProperty.Name & ControlChars.Cr
    Next myProperty
End Sub 'MyPropertyCollection 
private void MyPropertyCollection() {
    // Creates a new collection and assign it the properties for button1.
    PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(button1);
 
    // Displays each property in the collection in a text box.
    foreach (PropertyDescriptor myProperty in properties)
       textBox1.Text += myProperty.Name + '\n';
 }
private:
   void MyPropertyCollection()
   {
      // Creates a new collection and assign it the properties for button1.
      PropertyDescriptorCollection^ properties = TypeDescriptor::GetProperties( button1 );
      
      // Displays each property in the collection in a text box.
      for each ( PropertyDescriptor^ myProperty in properties )
      {
         textBox1->Text = String::Concat( textBox1->Text, myProperty->Name, "\n" );
      }
   }
private void MyPropertyCollection()
{
    // Creates a new collection and assign it the properties for button1.
    PropertyDescriptorCollection properties = 
        TypeDescriptor.GetProperties(button1);

    // Displays each property in the collection in a text box.
    for (int iCtr = 0; iCtr < properties.get_Count(); iCtr++) {
        PropertyDescriptor myProperty = properties.get_Item(iCtr);
        textBox1.set_Text(myProperty.get_Name() + '\n');
    }
} //MyPropertyCollection

継承階層

System.Object
  System.ComponentModel.PropertyDescriptorCollection

スレッド セーフ

この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 2.0、1.1、1.0

.NET Compact Framework

サポート対象 : 2.0、1.0

参照

関連項目

PropertyDescriptorCollection メンバ
System.ComponentModel 名前空間
PropertyDescriptor クラス
TypeDescriptor