0

我正在开发一个 Windows Mobile 6.5.3 应用程序。我的问题是如何以编程方式打开菜单弹出窗口。

我所做的是模拟触摸事件。通过使用

[DllImport("coredll")] private static extern void mouse_event(MOUSEEVENTF dwFlags, int dx, int dy, int dwData, int dwExtraInfo);

但这里的问题是我需要指定菜单按钮的位置,而且它还显示了一些鼠标指针,我不喜欢...

我可以发送任何消息并且菜单的弹出窗口会打开吗?

根据要求,我正在添加更多信息。我想打开以编程方式按下菜单按钮后打开的弹出窗口。

在此处输入图像描述

4

1 回答 1

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;

** 不知道回车是怎么回事......不能让他们只去第二个代码块......

于 2013-11-13T18:17:13.020 回答