如何在 C++/CLR 中向 WPF 按钮添加单击处理程序?
在 C# 中,我可以执行 (*):
Button b = new Button();
b.Click += ButtonOnClick;
:
void ButtonOnClick(object sender, RoutedEventArgs e)
{
// do something
}
但在 C++/CLI 中我不能执行:
Button ^ b = gcnew Button();
b->Click += ButtonOnClick;
:
void ButtonOnClick(Object ^ sender, RoutedEventArgs ^ e)
{
// do something
}
我收到编译器错误,抱怨 += ButtonOnClick: 2>.\blub.cpp(108) : 错误 C3867: 'MyListBoxItem::ButtonOnClick': 函数调用缺少参数列表;使用 '&MyListBoxItem::ButtonOnClick' 创建指向成员的指针
(编译器给我的提示不起作用,因为它不是静态方法。)
C++/CLI 中的 (*) 相当于什么?
谢谢 马克
In C#, I can do (*):
Button b = new Button();
b.Click += ButtonOnClick;
:
void ButtonOnClick(object sender, RoutedEventArgs e)
{
// do something
}
But in C++/CLI I can't do:
Button ^ b = gcnew Button();
b->Click += ButtonOnClick;
:
void ButtonOnClick(Object ^ sender, RoutedEventArgs ^ e)
{
// do something
}
I get a compiler error complaing about the += ButtonOnClick:
2>.\blub.cpp(108) : error C3867: 'MyListBoxItem::ButtonOnClick': function call missing argument list; use '&MyListBoxItem::ButtonOnClick' to create a pointer to member
(The tip the compiler gives me doesn't work because it isn't a static method.)
What is the equivalent of (*) in C++/CLI ?
Thx
Marc
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试
<罢工>
> <罢工>
try