VB.NET 2010、.NET 4VB.NETなぜこのサブルーチンはこのように宣言されていますか?
は、私は基本的な疑問を持っている:
Public Sub MyFunction(Of T As Control)(ByVal Control As T, ByVal Action As Action(Of T)) ...
私は(Tとして約思ったんだけど:私はどこかにオンラインthusly宣言したサブルーチンを持っていますコントロール)サブの名前の後の宣言の一部。私は(Tのうち)Tは、コントロールの種類を指定することにし、アクションの後半で使用されていることがわかりますが、なぜそれがこのように行われているだけではなくやって:
Public Sub MyFunction(ByVal Control As Control, ByVal Action As Action(Of Control)) ...
サブの名前の後にその部分が何を意味するのでしょうか?その目的は何ですか?ありがとう、私の無知のために申し訳ありません。
私は参照してください。好奇心のために、イベント処理サブルーチンのシグネチャがこれを持っていないのはなぜかと思います。 Private Sub Control_Click(Of T As Object)(ByVal送信者としてT、ByVal eをEventArgsとして)などの機能を実行できると思うので、そのプロパティにアクセスしたい場合は必ず「送信者」をキャストする必要はありません。それとも意味がありませんか?応答していただきありがとうございます。 –
細かいことをありがとう。 –
デリゲートの呼び出し元、Control_ClickはButton(または他のコントロール)であり、コントロールのprotected OnClickメソッドはデリゲートControl_Clickを呼び出します。 Tの型を知る必要があるので、コントロールが宣言されたときに型Tをパラメータとして渡す必要があります。基本的には、コントロールを書き直す必要があります。ただし、一般的なデリゲートを公開することはできます。詳細はこちら:http://stackoverflow.com/questions/3126886/how-to-declare-generic-event-for-generic-delegate-in-c –