将代码 C# 转换为 vb.net 委托
本文关键字:vb net 委托 转换 代码 | 更新日期: 2023-09-27 18:36:40
我正在尝试将示例代码的 c # 代码转换为 vb.net 但我可以使用以下代码行。 这是一个事件,代表。 但我无法构建功能结构。 有人可以帮助我吗?谢谢
Ellipse node = new Ellipse();
node.Style = nodeStyle;
node.MouseEnter += delegate(object sender, MouseEventArgs e) {
if (selectedNode == null)
node.BeginStoryboard((Storyboard)FindResource("NodeFadeIn"));
};
node.MouseLeave += delegate(object sender, MouseEventArgs e) {
if (selectedNode == null)
node.BeginStoryboard((Storyboard)FindResource("NodeFadeOut"));
};
node.PreviewMouseDown += delegate(object sender, MouseButtonEventArgs e) {
e.Handled = true;
selectedNode = (Ellipse)sender;
};
您需要在
VB.NET 中使用 AddHandler 关键字来订阅事件处理程序。 在VS2010中,匿名方法可以用lambda代替,如下所示:
AddHandler node.MouseEnter, _
Sub()
If node Is Nothing Then
node.BeginStoryboard(DirectCast(FindResource("NodeFadeIn"), System.Windows.Media.Animation.Storyboard))
End If
End Sub
在VS2008及更早版本中,您需要编写一些私有方法。