![](/img/trans.png)
[英]VB.NET WithEvents keyword behavior - VB.NET compiler restriction?
[英]Handles clause requires a WithEvents variable defined in the containing type or one of its base types in VB.net
我有一個使用Sharpdevelop從c#轉換的VB.net項目。 當我打開項目時,我可以運行得很好。 然后我在表單中添加了一個按鈕,突然出現12個錯誤,說:
Handles子句需要在包含類型或其基類型之一中定義的WithEvents變量
對於看起來像這樣的行:
Private Sub topListButton_Click(sender As Object, e As EventArgs) _
Handles topListButton.Click
這是從c#轉換的代碼。 我不知道為什么它最初運行但在我改變項目后遭到轟炸。
我嘗試刪除部分行:
Handles topListButton.Click
但現在按鈕點擊不會觸發。 任何線索將不勝感激。
VB.Net有一些奇怪的錯誤(或功能,取決於誰在詢問)。
如果要使用Handles
關鍵字附加事件處理程序,則必須使用WithEvents
關鍵字聲明引發事件的對象。
奇怪的是,事件將在有或沒有WithEvents
聲明的情況下引發,它的唯一目的是允許您使用Handles
關鍵字。 您仍然可以使用Add handler
語句將事件附加到處理Add handler
。
您可以在此處查看代碼示例。
保存topListButton_Click
方法的主體(Ctrl-C),刪除整個方法,通過雙擊WinForms設計器中的topListButton
重新創建它,然后再次插入主體(Ctrl-V)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.