Hi there,

I have created a context menu in my application, however, It take about 2
seconds to show the menu item after I hold the stylus on the screen. I am
just wondering, is it possible to change the context menu control so that the
menu item will show instantly whenever I hold the sytlus on the screen?

Thanks,

Jason

Re: ContextMenu control question for Pocket PC programming C# by MSenne

MSenne
Thu Jan 12 11:42:27 CST 2006

I see that you cross-posted to ms.pub.smartphone.developer - please
keep Pocket PC questions where they belong.

Please explain clearly whether there is a 2 second pause after the "tap
and hold" has completed (and the circle has gone around and changed
color), or if you are saying that you have to tap and hold the stylus
on the screen for 2 seconds before the context menu appears (which is
the expected behavior).

If your context menu is just slow, then check if the ContextMenu object
is being created dynamically. If so, then create it ahead of time and
just show it on demand. If it was pre-loaded and still takes forever
then provide a snip of code so we have more info to work with.

Good luck,
-MSenne


Re: ContextMenu control question for Pocket PC programming C# by jasonh121

jasonh121
Thu Jan 12 12:29:07 CST 2006

Sorry about this cross-post.

What I mean is if can be possible to display the context menu instantly
whenever I click the screen object in my application, without waiting those
color dots goes away.

Please let me know if it's possible to do, any example if possible?

Thanks,

Jason



"MSenne" wrote:

> I see that you cross-posted to ms.pub.smartphone.developer - please
> keep Pocket PC questions where they belong.
>
> Please explain clearly whether there is a 2 second pause after the "tap
> and hold" has completed (and the circle has gone around and changed
> color), or if you are saying that you have to tap and hold the stylus
> on the screen for 2 seconds before the context menu appears (which is
> the expected behavior).
>
> If your context menu is just slow, then check if the ContextMenu object
> is being created dynamically. If so, then create it ahead of time and
> just show it on demand. If it was pre-loaded and still takes forever
> then provide a snip of code so we have more info to work with.
>
> Good luck,
> -MSenne
>
>

Re: ContextMenu control question for Pocket PC programming C# by MSenne

MSenne
Thu Jan 12 16:00:10 CST 2006

Control over the context menu is handled by the system. The "tap and
hold" behavior does not trigger a mouse event like other screen taps so
you can't override the behavior as easily as many people would like. I
haven't done it before myself and I don't know if anyone has.

The way a context menu gets set is by using the 'ContextMenu' property
of a control and setting your context menu to it, then waiting for the
system to open it when it detects a tap-and-hold. You might try NOT
setting the property and trying to figure out a way to open a context
menu with a single 'Click' event handler. Not sure if that's possible
but it's probably worth looking into (somebody has probably tried it
before, check the groups).

Good luck!
-MSenne


Re: ContextMenu control question for Pocket PC programming C# by jasonh121

jasonh121
Thu Jan 12 19:04:01 CST 2006

Hi MSenne,

Thanks for your response. I will try to work around it.

Jason

"MSenne" wrote:

> Control over the context menu is handled by the system. The "tap and
> hold" behavior does not trigger a mouse event like other screen taps so
> you can't override the behavior as easily as many people would like. I
> haven't done it before myself and I don't know if anyone has.
>
> The way a context menu gets set is by using the 'ContextMenu' property
> of a control and setting your context menu to it, then waiting for the
> system to open it when it detects a tap-and-hold. You might try NOT
> setting the property and trying to figure out a way to open a context
> menu with a single 'Click' event handler. Not sure if that's possible
> but it's probably worth looking into (somebody has probably tried it
> before, check the groups).
>
> Good luck!
> -MSenne
>
>