您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“VB.NET如何實現遠程事件”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“VB.NET如何實現遠程事件”這篇文章吧。
在不同工程之間完成觸發事件的工作,這在VB中是不能做到的。但是在VB.NET中我們可以使用Event和RaiseEvent關鍵字并且使用Delegate關鍵字來實現它。如果你想從VB.NET工程中觸發一個事件并且在另外一個工程中收到這個觸發,我們就必須使用事件和Delegate的概念。
執行VB.NET遠程事件源
當我們仍要使用RaiseEvent語句來觸發事件的時候,如果要在其它VB.NET工程中的代碼接收代碼我們需要采用不同的方法來聲明事件。特殊地,我們需要在類外部我們要觸發事件的地方通過使用Delegate語句定義事件作為delegate。接著創建一個新的類庫,將它命名為EventSource并且增加一個簡單類命名為RemoteClass。
假定我們想觸發一個事件,這個事件返回一個字符串參數。我們首先要利用參數的類型來聲明一個Delegate:
Public Delegate Sub RemoteEventHandler(ByVal SomeString As String)
通常情況下VB.NET會自動創建這個Delegate。然而,有時候這個Delegate不能從其它工程中進行訪問,所以我們還是對它進行顯式的聲明。
以下是我們創建的類,它可以觸發事件:
Public Class RemoteClass Public Event RemoteEvent As RemoteEventHandler Public Sub DoSomething() RaiseEvent RemoteEvent(anyevent) End Sub End Class
這段功能是否成功的實現取決于事件本身的定義:
Public Event RemoteEvent As RemoteEventHandler
這個事件并沒有顯式地定義它的參數,而是依賴于Delegate來定義。反而,這個事件是定義為一個特殊的類型,即我們剛才定義Delegate的類型。
另外,用于觸發事件的代碼只是應用了一個簡單的RaiseEvent語句:
RaiseEvent RemoteEvent(anyevent)
這條語句提供的參數數值用于當事件被觸發時的返回值。
以上是“VB.NET如何實現遠程事件”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。