掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
デリゲートに登録する方法 (ID:87950)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
# 回答がつかないようなので。 > の構文で何故存在しないメンバを登録することができるのでしょうか? 理由については……とりあえず、「そういう仕様だから」と答えておきます。(^_^;) 先の例でいえば、もしもイベント宣言が Public Event テスト As SampleEventHandler であれば、 Dim del As SampleEventHandler = Me.テストEvent となりますね。 ただ、そのメンバが存在しない訳では無いですよ。 作成した exe を ildasm.exe で表示してみると、クラス A の内部に、 「SampleEventEvent」というプライベートフィールドが見えると思います。 ildasm を使うのが面倒なら、Class Aの内部に、 Private SampleEventEvent As Integer という一行を追加してみてください。Visual Studioが、以下のエラーを報告するはずです。 》class 'A' の 'Public Event SampleEvent(value As String)' に対して暗黙的に宣言された 》'Private Dim SampleEventEvent As SampleEventHandler' と競合しています。 実際のところ、VB.NETにおいては、 SampleEventEvent.Invoke("イベント発生") RaiseEvent SampleEvent("イベント発生") この2つは、(ほぼ)同じコードを意味しています。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.