MergablePropertyAttributeとは? わかりやすく解説

MergablePropertyAttribute クラス

[プロパティ] ウィンドウ内で、プロパティをほかのオブジェクトに属するプロパティと組み合わせることができることを指定します。

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

<AttributeUsageAttribute(AttributeTargets.All)> _
Public NotInheritable Class
 MergablePropertyAttribute
    Inherits Attribute
Dim instance As MergablePropertyAttribute
[AttributeUsageAttribute(AttributeTargets.All)] 
public sealed class MergablePropertyAttribute
 : Attribute
[AttributeUsageAttribute(AttributeTargets::All)] 
public ref class MergablePropertyAttribute
 sealed : public Attribute
/** @attribute AttributeUsageAttribute(AttributeTargets.All) */ 
public final class MergablePropertyAttribute
 extends Attribute
AttributeUsageAttribute(AttributeTargets.All) 
public final class MergablePropertyAttribute
 extends Attribute
解説解説

MergablePropertyAttribute に true を設定してマークされているプロパティは、他のオブジェクトに属するプロパティと [プロパティ] ウィンドウ内で組み合わせることができます。MergablePropertyAttribute に false を設定してマークされているプロパティは、個別に表示する必要があります。既定値は true です。

メモメモ

MergablePropertyAttribute に true を設定してプロパティをマークすると、この属性の値は定数メンバ Yes に設定されます。MergablePropertyAttribute プロパティに false を設定してマークされたプロパティの場合、値は No になります。したがって、コード内でこの属性の値を確認する場合は、属性を MergablePropertyAttribute.Yes または MergablePropertyAttribute.No として指定する必要があります。

詳細については、属性の概要、属性を使用したメタデータの拡張 の各トピックを参照してください。

使用例使用例

プロパティを組み合わせできるとしてマークする例を次に示します。

<MergableProperty(True)> _
Public Property MyProperty() As
 Integer
    Get
        ' Insert code here.
        Return 0
    End Get
    Set
        ' Insert code here.
    End Set 
End Property
[MergableProperty(true)]
 public int MyProperty {
    get {
       // Insert code here.
       return 0;
    }
    set {
       // Insert code here.
    }
 }
public:
   [MergableProperty(true)]
   property int MyProperty 
   {
      int get()
      {
         // Insert code here.
         return 0;
      }
      void set( int value
 )
      {
         // Insert code here.
      }
   }
/** @attribute MergableProperty(true)
 */

/** @property
 */
public int get_MyProperty()
{
    // Insert code here.
    return 0;
} //get_MyProperty

/** @property
 */
public void set_MyProperty(int
 value)
{
    // Insert code here.
} //set_MyProperty 

public MergableProperty(true)
function get MyProperty() : int{
  // Insert code here.
  return 0
}

function set MyProperty(value : int){
  // Insert code here.
}

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

この例では、MergablePropertyAttribute の値を確認する 2 種類の方法を示します。2 番目のコード片では、static を使用して Equals メソッドを呼び出します。最後のコード片では、AllowMerge プロパティを使用して値を確認します。

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

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

' This is another way to see if the property is bindable.
Dim myAttribute As MergablePropertyAttribute
 = _
    CType(attributes(GetType(MergablePropertyAttribute)), MergablePropertyAttribute)
If myAttribute.AllowMerge Then
    ' Insert code here.
End If 
// Gets the attributes for the property.
 AttributeCollection attributes = 
    TypeDescriptor.GetProperties(this)["MyProperty"].Attributes;
 
 // Checks to see if the value of the MergablePropertyAttribute is Yes.
 if(attributes[typeof(MergablePropertyAttribute)].Equals(MergablePropertyAttribute.Yes))
 {
    // Insert code here.
 }
 
 // This is another way to see if the property is bindable.
 MergablePropertyAttribute myAttribute = 
    (MergablePropertyAttribute)attributes[typeof(MergablePropertyAttribute)];
 if(myAttribute.AllowMerge) {
    // Insert code here.
 }
// Gets the attributes for the property.
AttributeCollection^ attributes = TypeDescriptor::GetProperties( this
 )[ "MyProperty" ]->Attributes;

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

// This is another way to see if the property is bindable.
MergablePropertyAttribute^ myAttribute = dynamic_cast<MergablePropertyAttribute^>(attributes[
 MergablePropertyAttribute::typeid ]);
if ( myAttribute->AllowMerge )
{
   // Insert code here.
}
// Gets the attributes for the property.
AttributeCollection attributes = 
    TypeDescriptor.GetProperties(this).get_Item(
    "MyProperty").get_Attributes();

// Checks to see if the value of the MergablePropertyAttribute is Yes.
if (attributes.get_Item(
        MergablePropertyAttribute.class.ToType()).Equals
        (MergablePropertyAttribute.Yes)) {

    // Insert code here.
}

// This is another way to see if the property is bindable.
MergablePropertyAttribute myAttribute = ((MergablePropertyAttribute)
    (attributes.get_Item(MergablePropertyAttribute.class.ToType())));
if (myAttribute.get_AllowMerge()) {
    // Insert code here.
}
// Gets the attributes for the property.
var attributes : AttributeCollection = TypeDescriptor.GetProperties(this)["MyProperty"].Attributes

// Checks to see if the value of the MergablePropertyAttribute is Yes.
if(attributes(MergablePropertyAttribute).Equals(MergablePropertyAttribute.Yes)){
  // Insert code here.
}

// This is another way to see if the property is bindable.
var myAttribute : MergablePropertyAttribute = MergablePropertyAttribute(attributes(MergablePropertyAttribute))
if(myAttribute.AllowMerge){
  // Insert code here.
}

MergablePropertyAttribute を使用してクラスをマークした場合は、次のコードを使用して値を確認します。

Dim attributes As AttributeCollection = TypeDescriptor.GetAttributes(MyProperty)
If attributes(GetType(MergablePropertyAttribute)).Equals(MergablePropertyAttribute.Yes)
 Then
    ' Insert code here.
End If 
AttributeCollection attributes = 
    TypeDescriptor.GetAttributes(MyProperty);
 if(attributes[typeof(MergablePropertyAttribute)].Equals(MergablePropertyAttribute.Yes))
 {
    // Insert code here.
 }
AttributeCollection^ attributes = TypeDescriptor::GetAttributes( MyProperty );
if ( attributes[ MergablePropertyAttribute::typeid ]->Equals(
 MergablePropertyAttribute::Yes ) )
{
   // Insert code here.
}
AttributeCollection attributes =
    TypeDescriptor.GetAttributes("MyProperty");
if (attributes.get_Item(
        MergablePropertyAttribute.class.ToType()).Equals(
        MergablePropertyAttribute.Yes)) {
    // Insert code here.
}
var attributes : AttributeCollection = TypeDescriptor.GetAttributes(MyProperty)
if(attributes(MergablePropertyAttribute).Equals(MergablePropertyAttribute.Yes)){
    // Insert code here.
}
継承階層継承階層
System.Object
   System.Attribute
    System.ComponentModel.MergablePropertyAttribute
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
MergablePropertyAttribute メンバ
System.ComponentModel 名前空間
PropertyDescriptor
AttributeCollection クラス
PropertyDescriptorCollection
Attribute

MergablePropertyAttribute コンストラクタ

MergablePropertyAttribute クラスの新しいインスタンスを初期化します。

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

Public Sub New ( _
    allowMerge As Boolean _
)
Dim allowMerge As Boolean

Dim instance As New MergablePropertyAttribute(allowMerge)
public MergablePropertyAttribute (
    bool allowMerge
)
public:
MergablePropertyAttribute (
    bool allowMerge
)
public MergablePropertyAttribute (
    boolean allowMerge
)
public function MergablePropertyAttribute (
    allowMerge : boolean
)

パラメータ

allowMerge

[プロパティ] ウィンドウ内で、プロパティを別のオブジェクトに属するプロパティと組み合わせることができる場合は true。それ以外の場合は false。

使用例使用例

プロパティを組み合わせできるとしてマークする例を次に示します。このコードは、新しい MergablePropertyAttribute を作成し、その値を MergablePropertyAttribute.Yes に設定してから、その属性をプロパティに関連付けます。

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

[MergableProperty(true)]
public int MyProperty {
   get {
      // Insert code here.
     return 0;
   }
   set {
      // Insert code here.
   }
}
   
public:
   [MergableProperty(true)]
   property int MyProperty 
   {
      int get()
      {
         // Insert code here.
         return 0;
      }
      void set( int value
 )
      {
         // Insert code here.
      }
   }
/** @attribute MergableProperty(true)
 */

/** @property
 */
public int get_MyProperty()
{
    // Insert code here.
    return 0;
} //get_MyProperty

/** @property 
 */
public void set_MyProperty(int
 value)
{
    // Insert code here.
} //set_MyProperty
public MergableProperty(true)
function get MyProperty() : int{
   // Insert code here.
   return 0
}

function set MyProperty(value : int){
   // Insert code here.
}

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
MergablePropertyAttribute クラス
MergablePropertyAttribute メンバ
System.ComponentModel 名前空間
MergablePropertyAttribute クラス

MergablePropertyAttribute フィールド


MergablePropertyAttribute プロパティ


パブリック プロパティパブリック プロパティ

参照参照

関連項目

MergablePropertyAttribute クラス
System.ComponentModel 名前空間
PropertyDescriptor
AttributeCollection クラス
PropertyDescriptorCollection
Attribute

MergablePropertyAttribute メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド Equals オーバーロードされます。 オーバーライドされます。 このインスタンスと指定したオブジェクトが等しいかどうかを示します。
パブリック メソッド GetCustomAttribute  オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用された指定した型のカスタム属性を取得します。 ( Attribute から継承されます。)
パブリック メソッド GetCustomAttributes  オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されたカスタム属性の配列を取得します。 ( Attribute から継承されます。)
パブリック メソッド GetHashCode オーバーライドされます。 対象のインスタンスのハッシュ コードを返します。
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 ( Object から継承されます。)
パブリック メソッド IsDefaultAttribute オーバーライドされます。 この属性が既定値かどうかを判断します。
パブリック メソッド IsDefined  オーバーロードされます。 指定した型のカスタム属性が、アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されているかどうかを判断します。 ( Attribute から継承されます。)
パブリック メソッド Match  派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。 ( Attribute から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String を返します。 ( Object から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

MergablePropertyAttribute クラス
System.ComponentModel 名前空間
PropertyDescriptor
AttributeCollection クラス
PropertyDescriptorCollection
Attribute

MergablePropertyAttribute メンバ

[プロパティ] ウィンドウ内で、プロパティをほかのオブジェクトに属するプロパティと組み合わせることができることを指定します。

MergablePropertyAttribute データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド MergablePropertyAttribute MergablePropertyAttribute クラスの新しいインスタンスを初期化します。
パブリック フィールドパブリック フィールド
パブリック プロパティパブリック プロパティ
パブリック メソッドパブリック メソッド
( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド Equals オーバーロードされます。 オーバーライドされます。 このインスタンスと指定したオブジェクトが等しいかどうかを示します。
パブリック メソッド GetCustomAttribute  オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用された指定した型のカスタム属性を取得します。 (Attribute から継承されます。)
パブリック メソッド GetCustomAttributes  オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されたカスタム属性の配列を取得します。 (Attribute から継承されます。)
パブリック メソッド GetHashCode オーバーライドされます。 対象のインスタンスのハッシュ コードを返します。
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド IsDefaultAttribute オーバーライドされます。 この属性が既定値かどうかを判断します。
パブリック メソッド IsDefined  オーバーロードされます。 指定した型のカスタム属性が、アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されているかどうかを判断します。 (Attribute から継承されます。)
パブリック メソッド Match  派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。 (Attribute から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String を返します。 (Object から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

MergablePropertyAttribute クラス
System.ComponentModel 名前空間
PropertyDescriptor
AttributeCollection クラス
PropertyDescriptorCollection
Attribute



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「MergablePropertyAttribute」の関連用語

MergablePropertyAttributeのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



MergablePropertyAttributeのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS