在捕獲事件的情況下,VB.NET中是否有方法在代碼片段上覆制C#行爲?VB.NET中的代碼片段快捷鍵?
I.E. C:
Btn.Click+=
然後雙擊tab。爲btn.click事件創建一個處理程序。
在捕獲事件的情況下,VB.NET中是否有方法在代碼片段上覆制C#行爲?VB.NET中的代碼片段快捷鍵?
I.E. C:
Btn.Click+=
然後雙擊tab。爲btn.click事件創建一個處理程序。
在C#中,只能使用+=
明確地連接事件。 VB相當於AddHandler
。
但VB也讓你connect events implicitly using the Handles
keyword。注意VB事件處理比C#更靈活。
有幾種方法可以使用Handles
自動創建事件處理程序代碼。
在設計視圖中,只需雙擊按鈕即可。
或者,在設計視圖中再次:
一個。在按鈕的屬性窗口中,單擊「閃電」查看事件。
b。雙擊Click
事件。
或者,在代碼視圖,你可以在窗口
一個頂部使用兩下拉列表。選擇左側的按鈕。
b。選擇右邊的Click
事件。
編輯:2010年VB.Net,你可以處理事件與statement lambdas。例如:
AddHandler b.Click, _
Sub(sender As Object, e As EventArgs)
MsgBox("Button Clicked")
'insert more complex logic here
End Sub
好了,也許你知道有關處理和匿名方法隱含的事件,你仍然決定你真的需要從AddHandler
線了明確的本地方法的所有時間。也許有一個支持它的第三方加載項。也許CodeRush呢,我不知道(如果有人知道,請留下評論)。或者你甚至可以創建自己的加載項。
我會從列表中選擇。看起來我忘了我所有可怕的VB6技能......我現在太寵壞了。 – Faruz 2010-11-15 14:03:19
奇怪的是VB.NET團隊沒有在Visual Studio中實現這樣的功能。
@Frauz,我明白你的挫敗感:-) – 2010-11-15 07:41:03
@法魯茲,@達林。沒有明確連接事件的捷徑。但在VB中,[隱式連接事件]更爲常見(http://stackoverflow.com/questions/2547033/what-is-the-difference-between-events-in-vb-and-c/2547083#2547083)。這可能是爲什麼沒有顯式方法的捷徑。 [我的答案列出了一些快捷方式]隱式方法(http://stackoverflow.com/questions/4182177/code-snippets-shortkey-in-vb-net/4183940#4183940)。 – MarkJ 2010-11-15 11:42:05
@法魯茲,@達林。你越瞭解*任何*語言,就越不會感到沮喪。 C#和VB之間只有[很少區別](http://visualstudiomagazine.com/columns/article.aspx?editorialsid=2894),它們[很容易學會](http://stackoverflow.com/q/ 15639分之1337253)。 – MarkJ 2010-11-15 11:43:17
聽起來很愚蠢,但通常它適用於在線記錄的事件:谷歌它和從示例複製/粘貼處理程序聲明。我知道,這並沒有回答這個問題,但比懸停事件成員幾乎不讀它的工具提示更好,並且成爲諸如'dte.Events.CommandEvents.BeforeExecute'之類的簡單解決方法' – 2015-11-05 03:34:40