This documentation is archived and is not being maintained.

Type.FilterNameIgnoreCase Field

Represents the case-insensitive member filter used on names. This field is read-only.

[Visual Basic]
Public Shared ReadOnly FilterNameIgnoreCase As MemberFilter
public static readonly MemberFilter FilterNameIgnoreCase;
public: static MemberFilter* FilterNameIgnoreCase;
public static var FilterNameIgnoreCase : MemberFilter;


This field holds a reference to the delegate used by the FindMembers method. The method encapsulated by this delegate takes two parameters: the first is a MemberInfo object and the second is an Object. The method determines whether the MemberInfo object matches the criteria specified by the Object. The Object is assigned a string value, which may include a trailing "*" wildcard character. Only wildcard end string matching is supported.

For example, the Object may be assigned the value "ByTe*". 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.


[Visual Basic, C#, C++] 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.

[Visual Basic] 
Imports System
Imports System.Reflection
Imports System.Security
Imports Microsoft.VisualBasic

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 'Main
End Class 'MyFilterNameIgnoreCaseSample

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); 

#using <mscorlib.dll>

using namespace System;
using namespace System::Collections;
using namespace System::Reflection;
using namespace System::Security;

int main() {
   try {        
      MemberFilter*  myFilter = Type::FilterNameIgnoreCase;
      Type*  myType = __typeof(System::String);
      MemberInfo*  myMemberinfo1[] = myType->FindMembers(
         static_cast<MemberTypes>(MemberTypes::Constructor |MemberTypes::Method),
         static_cast<BindingFlags>(BindingFlags::Public | BindingFlags::Static | BindingFlags::Instance),
         myFilter, S"C*");
      IEnumerator* myEnum = myMemberinfo1->GetEnumerator();
      while (myEnum->MoveNext()) {
         MemberInfo* myMemberinfo2 = __try_cast<MemberInfo*>(myEnum->Current);

         Console::Write(S"\n {0}", myMemberinfo2->Name);
         MemberTypes Mymembertypes = myMemberinfo2->MemberType; 
         Console::WriteLine(S" is a {0}", __box(Mymembertypes)); 
   } catch (ArgumentNullException* e) {
      Console::Write(S"ArgumentNullException : {0}", e->Message); 
   } catch (SecurityException* e) {
      Console::Write(S"SecurityException : {0}", e->Message); 
   } catch (Exception* e) {
      Console::Write(S"Exception : {0}", e->Message); 

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.


Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also

Type Class | Type Members | System Namespace | FindMembers | MemberFilter