同时按下多个按钮

6
在我的WP 7.1应用程序中,我有一个页面上有多个按钮。
我注意到当任何一个按钮被按下时,其他按钮都无法被按下。
如何解决这个问题?我需要允许用户同时按下多个按钮。
1个回答

4
很遗憾,您不能同时处理多个按钮点击。不过有一个方法可以解决这个问题。您可以使用Touch.FrameReported事件来获取用户在屏幕上触摸的所有点的位置(我之前读过在WP7上它被限制为两个,但无法验证)。您还可以检查用户正在执行的操作(例如Down、Move和Up),这可能取决于您正在进行的工作。
将此代码放入您的Application_Startup中。
Touch.FrameReported += new TouchFrameEventHandler(Touch_FrameReported);

把这段代码放在你的App类中。
void Touch_FrameReported(object sender, TouchFrameEventArgs e)
{
    TouchPoint primaryTouchPoint = args.GetPrimaryTouchPoint(null);


    TouchPointCollection touchPoints = args.GetTouchPoints(null);


    foreach (TouchPoint tp in touchPoints)
    {
        if(tp.Action == TouchAction.Down)
        {
        //Do stuff here
        }

    }
}

在“这里执行操作”部分,您需要检查TouchPoint tp是否在一个按钮占据的区域内。
//This is the rectangle where your button is located, change values as needed.
Rectangle r1 = new Rectangle(0, 0, 100, 100); 
if (r1.Contains(tp.Position))
{
   //Do button click stuff here.
}

希望这样做可以解决您的问题。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接