TypeFilter デリゲートとは? わかりやすく解説

TypeFilter デリゲート

Type オブジェクトの配列で表されているクラスにフィルタを適用します。

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

<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public Delegate Function
 TypeFilter ( _
    m As Type, _
    filterCriteria As Object _
) As Boolean
Dim instance As New TypeFilter(AddressOf
 HandlerMethod)
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public delegate bool TypeFilter (
    Type m,
    Object filterCriteria
)
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public delegate bool TypeFilter (
    Type^ m, 
    Object^ filterCriteria
)
/** @delegate */
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
public delegate boolean TypeFilter (
    Type m, 
    Object filterCriteria
)
JScript では、デリゲートは使用できますが、新規に宣言することはできません。

パラメータ

m

フィルタを適用する対象の Type オブジェクト。

filterCriteria

リストにフィルタを適用するために使用する任意のオブジェクト。

戻り値
フィルタ適用後のリストに、指定した Type オブジェクトが含まれる場合は true。それ以外の場合は false。

解説解説
使用例使用例

この例では、リフレクションを使用して一致したエントリのサブセットをフィルタ処理するか、返すことができるようにする TypeFilter デリゲートのプロトタイプに一致させるメソッドを定義する方法を示しています。

Imports system
Imports system.Reflection

' This interface is defined in this assembly.
Public Interface IBookRetailer
    Sub Purchase()
    Sub ApplyDiscount()
End Interface

' This interface is also defined in this assembly.
Public Interface IMusicRetailer
    Sub Purchase()
End Interface

' This class implements four interfaces; two are defined in this assembly
 and two are defined in another assembly.
Public Class MyRetailer
    Implements IBookRetailer, IMusicRetailer, IComparable, ICloneable

    ' For demonstration purposes, this method returns nothing; it just
 allows the code to compile.
    Public Function Clone() As
 Object Implements System.ICloneable.Clone
        Return Nothing
    End Function

    ' For demonstration purposes, this method returns nothing; it just
 allows the code to compile.
    Public Function CompareTo(ByVal
 obj As Object) As Integer
 Implements System.IComparable.CompareTo
        Return Nothing
    End Function

    ' For demonstration purposes, this method returns nothing; it just
 allows the code to compile.
    Public Sub ApplyDiscout() Implements
 IBookRetailer.ApplyDiscount
    End Sub

    ' For demonstration purposes, this method returns nothing; it just
 allows the code to compile.
    Public Sub Purchase() Implements
 IBookRetailer.Purchase
    End Sub

    ' For demonstration purposes, this method returns nothing; it just
 allows the code to compile.
    Public Sub Purchase1() Implements
 IMusicRetailer.Purchase
    End Sub
End Class

Module Module1

    Sub Main()
        ' Find the interfaces defined by the MyRetailer class. Each
 interface found is passed to
        ' the TypeFilter method which checks if the interface is defined
 in the executing assembly.
        Dim interfaces() As Type = _
            GetType(MyRetailer).FindInterfaces(AddressOf
 TypeFilter, Assembly.GetExecutingAssembly().GetName().ToString())

        ' Show the interfaces that are defined in this assembly that
 are also implemented by MyRetailer.
        Console.WriteLine("MyRetailer implements the following
 interfaces (defined in this assembly):")
        Dim t As Type
        For Each t In interfaces
            Console.WriteLine("   {0}", t.Name)
        Next
    End Sub

    ' This method is called by the FindInterfaces method. 
    ' This method is called once per interface defined.
    Function TypeFilter(ByVal t As
 Type, ByVal filterCriteria As Object)
 As Boolean
        ' Return true if interface is defined in the same 
        ' assembly identified by the filterCriteria object.
        Return t.Assembly.GetName().ToString() = CType(filterCriteria,
 String)
    End Function

End Module

' Output will vary based on the contents of the C drive.
'
' This code produces the following output.
' MyRetailer implements the following interfaces (defined in this assembly):
'   IBookRetailer
'   IMusicRetailer
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳

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

辞書ショートカット

すべての辞書の索引

「TypeFilter デリゲート」の関連用語

TypeFilter デリゲートのお隣キーワード
検索ランキング

   

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



TypeFilter デリゲートのページの著作権

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

©2026 GRAS Group, Inc.RSS