次の方法で共有


CodeMethodReferenceExpression クラス

メソッドへの参照を表します。

この型のすべてのメンバの一覧については、CodeMethodReferenceExpression メンバ を参照してください。

System.Object
   System.CodeDom.CodeObject
      System.CodeDom.CodeExpression
         System.CodeDom.CodeMethodReferenceExpression

<Serializable>
<ClassInterface(ClassInterfaceType.AutoDispatch)>
<ComVisible(True)>
Public Class CodeMethodReferenceExpression   Inherits CodeExpression
[C#]
[Serializable]
[ClassInterface(ClassInterfaceType.AutoDispatch)]
[ComVisible(true)]
public class CodeMethodReferenceExpression : CodeExpression
[C++]
[Serializable]
[ClassInterface(ClassInterfaceType::AutoDispatch)]
[ComVisible(true)]
public __gc class CodeMethodReferenceExpression : public   CodeExpression
[JScript]
public
   Serializable
 ClassInterface(ClassInterfaceType.AutoDispatch)
 ComVisible(true)
class CodeMethodReferenceExpression extends CodeExpression

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

CodeMethodReferenceExpression を使用して、'Object.Method' という形式の式を表すことができます。

TargetObject プロパティは、メソッドを格納するオブジェクトを示します。 MethodName プロパティは、メソッドの名前を示します。

CodeMethodReferenceExpression は、呼び出されるメソッドを示すために CodeMethodInvokeExpression で使用されたり、イベントを処理するメソッドを示すために CodeDelegateCreateExpression で使用されたりします。

使用例

[Visual Basic, C#, C++] CodeMethodReferenceExpression を使用してメソッドを参照するコード例を次に示します。

 
' Invokes the TestMethod method of the current type object.
Dim methodRef1 As New CodeMethodReferenceExpression(New CodeThisReferenceExpression(), "TestMethod")
Dim invoke1 As New CodeMethodInvokeExpression(methodRef1, New CodeParameterDeclarationExpression() {})

' A Visual Basic code generator produces the following source code for the preceeding example code:

'       Me.TestMethod


[C#] 
// Invokes the TestMethod method of the current type object.
CodeMethodReferenceExpression methodRef1 = new CodeMethodReferenceExpression( new CodeThisReferenceExpression(), "TestMethod" );
CodeMethodInvokeExpression invoke1 = new CodeMethodInvokeExpression( methodRef1, new CodeParameterDeclarationExpression[] {} );                                    

// A C# code generator produces the following source code for the preceeding example code:

//        this.TestMethod();


[C++] 
// Invokes the TestMethod method of the current type object.
CodeMethodReferenceExpression* methodRef1 = new CodeMethodReferenceExpression( new CodeThisReferenceExpression(), S"TestMethod" );

CodeParameterDeclarationExpression* temp1 [];
CodeMethodInvokeExpression* invoke1 = new CodeMethodInvokeExpression( methodRef1, temp1 );

// A C# code generator produces the following source code for the preceeding example code:

//        this.TestMethod();

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.CodeDom

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

アセンブリ: System (System.dll 内)

参照

CodeMethodReferenceExpression メンバ | System.CodeDom 名前空間