我正在开发Windows Mobile 6.5.3应用程序。我的问题是如何以编程方式打开菜单弹出窗口。
我做的是模拟触摸事件。使用
[的DllImport( “coredll”)] private static extern void mouse_event(MOUSEEVENTF dwFlags,int dx,int dy,int dwData,int dwExtraInfo);
但问题是我需要指定菜单按钮的位置,并且它显示鼠标指针的一些视图,我不喜欢...
是否有任何消息我可以发送,菜单的弹出窗口会打开?
根据要求,我正在添加更多信息。我想打开以编程方式按下菜单按钮后打开的弹出窗口。
答案 0 :(得分:0)
从控件中获取上下文菜单,然后使用上下文菜单中的Show()
方法。
编辑:答案已修改且代码已更改
这就是我为让它为我工作所做的一切。
ContextMenu ctxMenu = BTN_TheButtonControlThatYouPressed.ContextMenu;
ctxMenu.Placement = System.Windows.Controls.Primitives.PlacementMode.MousePoint;
ctxMenu.IsOpen = true;
现在,因为您的上下文菜单已经分配给您的表单而不是您的按钮,您只需将“BTN_TheButtonControl ...”替换为一个简单的“this”,它应该“定位”表单。
所以 - 将以下代码添加到按钮的点击事件中,你应该没问题。
ContextMenu ctxMenu = this.ContextMenu;
ctxMenu.Placement = System.Windows.Controls.Primitives.PlacementMode.MousePoint;
ctxMenu.IsOpen = true;
**不确定回车是怎么回事......不能让他们只去第二段代码......