Type.FilterNameIgnoreCase Field


表示用在名稱上的不區分大小寫的成員篩選條件。Represents the case-insensitive member filter used on names. 此欄位是唯讀的。This field is read-only.

public: static initonly System::Reflection::MemberFilter ^ FilterNameIgnoreCase;
public static readonly System.Reflection.MemberFilter FilterNameIgnoreCase;
 staticval mutable FilterNameIgnoreCase : System.Reflection.MemberFilter
Public Shared ReadOnly FilterNameIgnoreCase As MemberFilter 

Field Value



下列範例會取得 MemberFilter 委派、將它當做參數傳遞給 FindMembers 方法,並顯示以字母 "c" 為開頭之 String 類別的方法和屬性,而不會忽略這種情況。The following example gets the MemberFilter delegate, passes it as a parameter to the FindMembers method, and displays the methods and their attributes of the String class that begin with the letter "c", disregarding the case.

using namespace System;
using namespace System::Collections;
using namespace System::Reflection;
using namespace System::Security;
int main()
      MemberFilter^ myFilter = Type::FilterNameIgnoreCase;
      Type^ myType = System::String::typeid;
      array<MemberInfo^>^myMemberinfo1 = myType->FindMembers( static_cast<MemberTypes>(MemberTypes::Constructor | MemberTypes::Method), static_cast<BindingFlags>(BindingFlags::Public | BindingFlags::Static | BindingFlags::Instance), myFilter, "C*" );
      IEnumerator^ myEnum = myMemberinfo1->GetEnumerator();
      while ( myEnum->MoveNext() )
         MemberInfo^ myMemberinfo2 = safe_cast<MemberInfo^>(myEnum->Current);
         Console::Write( "\n {0}", myMemberinfo2->Name );
         MemberTypes Mymembertypes = myMemberinfo2->MemberType;
         Console::WriteLine( " is a {0}", Mymembertypes );
   catch ( ArgumentNullException^ e ) 
      Console::Write( "ArgumentNullException : {0}", e->Message );
   catch ( SecurityException^ e ) 
      Console::Write( "SecurityException : {0}", e->Message );
   catch ( Exception^ e ) 
      Console::Write( "Exception : {0}", e->Message );
using System;
using System.Reflection;
using System.Security;
public class MyFilterNameIgnoreCaseSample
    public static void Main()
            MemberFilter myFilter = Type.FilterNameIgnoreCase;
            Type myType = typeof(System.String);
            MemberInfo[] myMemberinfo1 = myType.FindMembers(MemberTypes.Constructor
                |MemberTypes.Method, BindingFlags.Public | BindingFlags.Static |
                BindingFlags.Instance, myFilter, "C*");
            foreach (MemberInfo myMemberinfo2 in myMemberinfo1)
                Console.Write("\n" + myMemberinfo2.Name);
                MemberTypes Mymembertypes = myMemberinfo2.MemberType;
                Console.WriteLine(" is a " + Mymembertypes.ToString());
        catch(ArgumentNullException e)
            Console.Write("ArgumentNullException : " + e.Message);
        catch(SecurityException e)
            Console.Write("SecurityException : " + e.Message);
        catch(Exception e)
            Console.Write("Exception : " + e.Message);
Imports System.Reflection
Imports System.Security

Public Class MyFilterNameIgnoreCaseSample
    Public Shared Sub Main()
            Dim myFilter As MemberFilter = Type.FilterNameIgnoreCase
            Dim myType As Type = GetType(System.String)
            Dim myMemberinfo1 As MemberInfo() = myType.FindMembers(MemberTypes.Constructor Or MemberTypes.Method, BindingFlags.Public Or BindingFlags.Static Or BindingFlags.Instance, myFilter, "C*")
            Dim myMemberinfo2 As MemberInfo
            For Each myMemberinfo2 In myMemberinfo1
                Console.Write((ControlChars.NewLine + myMemberinfo2.Name))
                Dim Mymembertypes As MemberTypes = myMemberinfo2.MemberType
                Console.WriteLine((" is a " + Mymembertypes.ToString()))
            Next myMemberinfo2
        Catch e As ArgumentNullException
            Console.Write("ArgumentNullException : " + e.Message.Tostring())
        Catch e As SecurityException
            Console.Write("SecurityException : " + e.Message.Tostring())
        Catch e As Exception
            Console.Write("Exception : " + e.Message.Tostring())
        End Try
    End Sub
End Class


這個欄位會保存 FindMembers 方法所使用之委派的參考。This field holds a reference to the delegate used by the FindMembers method. 這個委派所封裝的方法會採用兩個參數:第一個是 MemberInfo 物件,而第二個是 ObjectThe method encapsulated by this delegate takes two parameters: the first is a MemberInfo object and the second is an Object. 方法會判斷 MemberInfo 物件是否符合 Object所指定的準則。The method determines whether the MemberInfo object matches the criteria specified by the Object. Object 會被指派一個字串值,其中可能包含尾端的 "*" 萬用字元。The Object is assigned a string value, which may include a trailing "*" wildcard character. 僅支援萬用字元結束字串比對。Only wildcard end string matching is supported.

例如,Object 可能會被指派 "ByTe *" 值。For example, the Object may be assigned the value "ByTe*". 在此情況下,當叫用 FilterName 委派時,只有在 MemberInfo 物件所表示的方法具有以 "byte" 開頭的名稱,忽略大小寫時,才會傳回 true。In that case, when the FilterName delegate is invoked, it will return true only if the method represented by the MemberInfo object has a name that begins with "byte", ignoring case.

Applies to

See also