リフレクションを活用してプライベートC#メソッドを呼び出すコードスニペットは
を使用して、名前でメソッドを見つけます。 ただし、デフォルトでは、プライベートメンバーを除外します。プライベートな方法を含めるには、:
を呼び出すときは、特定のを組み込む必要があります。
GetMethod()
GetMethod()
BindingFlags
検索に非公開(プライベート)メソッドを含めることを保証しますが、GetMethod()
は検索をインスタンスメソッドに制限します。 この組み合わせは、
<code class="language-csharp">MethodInfo dynMethod = this.GetType().GetMethod("Draw_" + itemType, BindingFlags.NonPublic | BindingFlags.Instance); dynMethod.Invoke(this, new object[] { methodParams });</code>メソッド検索のカスタマイズの詳細については、
列挙のC#ドキュメントを参照してください。 このドキュメントでは、メソッド、フィールド、その他のクラスメンバーを介して検索を改善するための利用可能なすべてのフラグを包括的にリストします。
以上がC#の反射を使用してプライベートメソッドにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。