在 VB 中,我们有 Handles 子句,它允许将 Handler 添加到控件的事件中,而无需将其放入 xaml 文件(直接放入 VB 文件)。
xml:
<Button x:Name="myButton" />
VB:
Private Sub Button_Click() Handles myButton.Click
End Sub
使用它可以完成的一件好事是可以使用 Visual Studio 下拉菜单自动添加事件,而无需转到 xaml 文件并进行更改。阅读这个问题(和答案)以更好地理解我在说什么:
Visual Studio 2010 显示来自代码背后的可用事件
该问题的答案没有说明为什么 C# 在 Visual Studio 中没有此功能,但我很清楚:C# 没有此功能,因为它使用 Handles 子句在 CodeBehind 上添加事件。
我知道我们可以使用 += 并在构造函数上手动添加事件,在 InitializeComponent 下面(几乎是同一件事),但是 VB 也有 AddHandler 可以在构造函数上添加事件(以及在其他地方) ,并且它不是自动的,并且(对我而言)比 Handles 子句更不可靠。
我的问题是:
为什么它从来没有实施过?不靠谱吗?不安全?有什么解决方法吗?