DefaultMemberAttribute クラスとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > DefaultMemberAttribute クラスの意味・解説 

DefaultMemberAttribute クラス

InvokeMember が使用する既定メンバである型のメンバ定義します

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

<SerializableAttribute> _
<ComVisibleAttribute(True)> _
<AttributeUsageAttribute(AttributeTargets.Class Or AttributeTargets.Struct
 Or AttributeTargets.Interface)> _
Public NotInheritable Class
 DefaultMemberAttribute
    Inherits Attribute
Dim instance As DefaultMemberAttribute
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Struct|AttributeTargets.Interface)]
 
public sealed class DefaultMemberAttribute
 : Attribute
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets::Class|AttributeTargets::Struct|AttributeTargets::Interface)]
 
public ref class DefaultMemberAttribute sealed
 : public Attribute
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Struct|AttributeTargets.Interface)
 */ 
public final class DefaultMemberAttribute extends
 Attribute
SerializableAttribute 
ComVisibleAttribute(true) 
AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Struct|AttributeTargets.Interface)
 
public final class DefaultMemberAttribute extends
 Attribute
解説解説

プロパティは、そのプロパティ引数存在し、かつ、プロパティ名またはそのいずれかアクセサDefaultMemberAttribute指定された名前と一致する場合インデクサ (Visual Basic では既定インデックス付きプロパティ) としてインポートされます格納している型に DefaultMemberAttribute存在しない場合、その型にはインデクサ存在しません。C# コンパイラでは、インデクサを含むすべての型について、DefaultMemberAttribute出力しますC# では、既にインデクサ宣言されている型に対し直接 DefaultMemberAttribute属性指定するエラーなります

使用例使用例
Imports System
Imports System.Reflection
Imports System.IO
Imports Microsoft.VisualBasic

<DefaultMemberAttribute("Age")> Public
 Class [MyClass]

    Public Sub Name(ByVal
 s As String)
    End Sub 'Name

    Public ReadOnly Property
 Age() As Integer
        Get
            Return 20
        End Get
    End Property

    Public Shared Sub Main()
        Try
            Dim myType As Type = GetType([MyClass])
            Dim memberInfoArray As MemberInfo()
 = myType.GetDefaultMembers()
            If memberInfoArray.Length > 0 Then
                Dim memberInfoObj As MemberInfo
                For Each memberInfoObj In
 memberInfoArray
                    Console.WriteLine("The default member name
 is: " + memberInfoObj.ToString())
                Next memberInfoObj
            Else
                Console.WriteLine("No default members are available.")
            End If
        Catch e As InvalidOperationException
            Console.WriteLine("InvalidOperationException: "
 + e.Message)
        Catch e As IOException
            Console.WriteLine("IOException: " + e.Message)
        Catch e As Exception
            Console.WriteLine("Exception: " + e.Message)
        End Try
    End Sub 'Main
End Class '[MyClass]
using System;
using System.Reflection;
using System.IO;

[DefaultMemberAttribute("Age")]   
public class MyClass
{
    public void Name(String s) {}
    public int Age
    {
        get
        {
            return 20;
        }
    }
    public static void Main()
    {
        try
        {
            Type  myType = typeof(MyClass);
            MemberInfo[] memberInfoArray = myType.GetDefaultMembers();
            if (memberInfoArray.Length > 0)
            {
                foreach(MemberInfo memberInfoObj in
 memberInfoArray)
                {
                    Console.WriteLine("The default member
 name is: " + memberInfoObj.ToString());
                }
            }
            else
            {
                Console.WriteLine("No default members are
 available."); 
            }
        }
        catch(InvalidOperationException e)
        {
            Console.WriteLine("InvalidOperationException: " + e.Message);
        }
        catch(IOException e)
        {
            Console.WriteLine("IOException: " + e.Message);
        }
        catch(Exception e)
        {
            Console.WriteLine("Exception: " + e.Message);
        }
    }
}
using namespace System;
using namespace System::Reflection;
using namespace System::IO;

[DefaultMemberAttribute("Age")]
public ref class MyClass
{
public:
   void Name( String^ s ){}


   property int Age 
   {
      int get()
      {
         return 20;
      }

   }

};

int main()
{
   try
   {
      Type^ myType = MyClass::typeid;
      array<MemberInfo^>^memberInfoArray = myType->GetDefaultMembers();
      if ( memberInfoArray->Length > 0 )
      {
         System::Collections::IEnumerator^ myEnum = memberInfoArray->GetEnumerator();
         while ( myEnum->MoveNext() )
         {
            MemberInfo^ memberInfoObj = safe_cast<MemberInfo^>(myEnum->Current);
            Console::WriteLine( "The default member name
 is: {0}", memberInfoObj );
         }
      }
      else
      {
         Console::WriteLine( "No default members are available."
 );
      }
   }
   catch ( InvalidOperationException^ e ) 
   {
      Console::WriteLine( "InvalidOperationException: {0}", e->Message
 );
   }
   catch ( IOException^ e ) 
   {
      Console::WriteLine( "IOException: {0}", e->Message );
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "Exception: {0}", e->Message );
   }
}
import System.*;
import System.Reflection.*;
import System.IO.*;

/** @attribute DefaultMemberAttribute("Age")
 */
public class MyClass
{
    public void Name(String s)
    {
    } //Name

    /** @property 
     */
    public int get_Age()
    {
        return 20;
    } //get_Age

    public static void main(String[]
 args)
    {
        try {
            Type myType = MyClass.class.ToType();
            MemberInfo memberInfoArray[] = myType.GetDefaultMembers();
            if (memberInfoArray.length > 0) {
                for (int iCtr = 0; iCtr <
 memberInfoArray.length; iCtr++) {
                    MemberInfo memberInfoObj = memberInfoArray[iCtr];
                    Console.WriteLine("The default member
 name is: "
                        + memberInfoObj.ToString());
                }
            }
            else {
                Console.WriteLine("No default members are
 available.");
            }
        }
        catch (InvalidOperationException e) {
            Console.WriteLine("InvalidOperationException: " + e.get_Message());
        }
        catch (IOException e) {
            Console.WriteLine("IOException: " + e.get_Message());
        }
        catch (System.Exception e) {
            Console.WriteLine("Exception: " + e.get_Message());
        }
    } //main
} //MyClass
継承階層継承階層
System.Object
   System.Attribute
    System.Reflection.DefaultMemberAttribute
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「DefaultMemberAttribute クラス」の関連用語

DefaultMemberAttribute クラスのお隣キーワード
検索ランキング

   

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



DefaultMemberAttribute クラスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

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

©2025 GRAS Group, Inc.RSS