次の方法で共有


RecommendedAsConfigurableAttribute クラス

プロパティをアプリケーションの設定値として使用できることを指定します。

この型のすべてのメンバの一覧については、RecommendedAsConfigurableAttribute メンバ を参照してください。

System.Object
   System.Attribute
      System.ComponentModel.RecommendedAsConfigurableAttribute

<AttributeUsage(AttributeTargets.Property)>
Public Class RecommendedAsConfigurableAttribute   Inherits Attribute
[C#]
[AttributeUsage(AttributeTargets.Property)]
public class RecommendedAsConfigurableAttribute : Attribute
[C++]
[AttributeUsage(AttributeTargets::Property)]
public __gc class RecommendedAsConfigurableAttribute : public   Attribute
[JScript]
public
   AttributeUsage(AttributeTargets.Property)
class RecommendedAsConfigurableAttribute extends Attribute

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

trueRecommendedAsConfigurableAttribute コンストラクタを使用してマークされたプロパティは、Visual Studio .NET の [プロパティ] ウィンドウにある ConfigurableProperties 行を展開すると表示されます。推奨される設定値のないプロパティや、値 falseRecommendedAsConfigurableAttribute コンストラクタを使用してマークされたプロパティは表示されません。これらのプロパティは、アプリケーションの設定値として使用できません。既定値は false です。

RecommendedAsConfigurableAttribute が関連付けられていないプロパティを Visual Studio .NET の設定値に連結するには、[プロパティ] ウィンドウの [設定] の下にある [...] ボタンをクリックし、リストから該当するプロパティを選択します。

メモ   値 trueRecommendedAsConfigurableAttribute コンストラクタを使用してプロパティをマークすると、この属性の値は定数メンバ Yes に設定されます。値 falseRecommendedAsConfigurableAttribute コンストラクタを使用してマークされているプロパティの場合、値は No になります。したがって、コード内でこの属性の値を確認する場合は、属性を RecommendedAsConfigurableAttribute.Yes または RecommendedAsConfigurableAttribute.No として指定する必要があります。

詳細については、「 属性の概要 」および「 属性を使用したメタデータの拡張 」を参照してください。

使用例

[Visual Basic, C#, C++] プロパティをアプリケーションの設定値として使用できるようにマークする例を次に示します。

 
<RecommendedAsConfigurable(True)> _
Public Property MyProperty() As Integer
    Get
        ' Insert code here.
        Return 0
    End Get
    Set
        ' Insert code here.
    End Set 
End Property

[C#] 
[RecommendedAsConfigurable(true)]
 public int MyProperty {
    get {
       // Insert code here.
       return 0;
    }
    set {
       // Insert code here.
    }
 }

[C++] 
public:
    [RecommendedAsConfigurable(true)]
    __property int get_MyProperty() {
        // Insert code here.
        return 0;
    }
    __property void set_MyProperty( int /*value*/ ) {
        // Insert code here.
    }

[Visual Basic, C#, C++] MyPropertyRecommendedAsConfigurableAttribute の値を確認する方法を次の例に示します。最初に、オブジェクトのすべてのプロパティを保持する PropertyDescriptorCollection を取得します。次に、インデックスを付けて PropertyDescriptorCollection から MyProperty を取得します。そして、このプロパティの属性を返し、その属性を属性変数に保存します。

[Visual Basic, C#, C++] この例では、 RecommendedAsConfigurableAttribute の値を確認する 2 種類の方法を示します。2 番目のコード片では、 Equals メソッドを呼び出します。最後のコード片では、 RecommendedAsConfigurable プロパティを使用して値を確認します。

 
' Gets the attributes for the property.
Dim attributes As AttributeCollection = TypeDescriptor.GetProperties(Me)("MyProperty").Attributes

' Checks to see if the value of the RecommendedAsConfigurableAttribute is Yes.
If attributes(GetType(RecommendedAsConfigurableAttribute)).Equals(RecommendedAsConfigurableAttribute.Yes) Then
    ' Insert code here.
End If 

' This is another way to see if the property is recommended as configurable.
Dim myAttribute As RecommendedAsConfigurableAttribute = _
    CType(attributes(GetType(RecommendedAsConfigurableAttribute)), RecommendedAsConfigurableAttribute)
If myAttribute.RecommendedAsConfigurable Then
    ' Insert code here.
End If

[C#] 
// Gets the attributes for the property.
AttributeCollection attributes = 
   TypeDescriptor.GetProperties(this)["MyProperty"].Attributes;
 
// Checks to see if the value of the RecommendedAsConfigurableAttribute is Yes.
if(attributes[typeof(RecommendedAsConfigurableAttribute)].Equals(RecommendedAsConfigurableAttribute.Yes)) {
   // Insert code here.
}
 
// This is another way to see if the property is recommended as configurable.
RecommendedAsConfigurableAttribute myAttribute = 
   (RecommendedAsConfigurableAttribute)attributes[typeof(RecommendedAsConfigurableAttribute)];
if(myAttribute.RecommendedAsConfigurable) {
   // Insert code here.
}

[C++] 
// Gets the attributes for the property.
AttributeCollection* attributes = 
    TypeDescriptor::GetProperties(this)->Item[S"MyProperty"]->Attributes;

// Checks to see if the value of the RecommendedAsConfigurableAttribute is Yes.
if(attributes->Item[__typeof(RecommendedAsConfigurableAttribute)]->Equals(RecommendedAsConfigurableAttribute::Yes)) {
    // Insert code here.
}

// This is another way to see if the property is recommended as configurable.
RecommendedAsConfigurableAttribute* myAttribute = 
    dynamic_cast<RecommendedAsConfigurableAttribute*>(attributes->Item[__typeof(RecommendedAsConfigurableAttribute)]);
if(myAttribute->RecommendedAsConfigurable) {
    // Insert code here.
}

[Visual Basic, C#, C++] RecommendedAsConfigurableAttribute を使用してクラスをマークした場合は、次のコードを使用して値を確認します。

 
Dim attributes As AttributeCollection = TypeDescriptor.GetAttributes(MyProperty)
If attributes(GetType(RecommendedAsConfigurableAttribute)).Equals(RecommendedAsConfigurableAttribute.Yes) Then
    ' Insert code here.
End If 

[C#] 
AttributeCollection attributes = 
   TypeDescriptor.GetAttributes(MyProperty);
if(attributes[typeof(RecommendedAsConfigurableAttribute)].Equals(RecommendedAsConfigurableAttribute.Yes)) {
   // Insert code here.
}

[C++] 
AttributeCollection* attributes = 
    TypeDescriptor::GetAttributes( __box(MyProperty));
if(attributes->Item[__typeof(RecommendedAsConfigurableAttribute)]->Equals(RecommendedAsConfigurableAttribute::Yes)) {
    // Insert code here.
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.ComponentModel

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

アセンブリ: System (System.dll 内)

参照

RecommendedAsConfigurableAttribute メンバ | System.ComponentModel 名前空間 | Attribute | PropertyDescriptor | AttributeCollection | PropertyDescriptorCollection