微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C#和VB6:如何将’with’语句转换为C#?

如何将这段VB6代码转换为C#?

http://pastebin.com/f16e19351

我已经尝试过自己并且到目前为止:

http://pastebin.com/f7ca199f0

编辑:代码我试图翻译存在于这里:
http://www.codeproject.com/KB/vb-interop/MouseHunter.aspx

解决方法

你没有显示EventThief代码,这使得无法分辨.但总的来说:
With expression
   .Foo = a
   .Bar = b
End With

会翻译成

var x = expression;
x.Foo = a;
x.Bar = b;

(当然你可以明确指定类型……)

这里的共性是表达式仅被评估一次.在您展示的特定代码中,当然不需要额外的变量,因为表达式首先只是局部变量.

你的实际错误看起来只是与EventThief.RIGHT_DOWN等类型有关,而不是与WITH语句有关.

编辑:好的,你现在已经展示了使用布尔值的原始EventThief代码……但是你没有显示你移植的EventThief代码.你写了:

It says et.LEFT_UP is a short

……但它不应该.在原来它是一个布尔值,为什么它是你的端口短?

原文地址:https://www.jb51.cc/csharp/96293.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐