6

在我的 WP 7.1 应用程序中,我有一个包含多个按钮的页面。
我注意到当任何一个按钮被按下时,其他按钮都不能被按下。

我该如何克服呢?我需要能够允许用户同时按下多个按钮。

4

1 回答 1

4

不幸的是,您不能一次处理多个按钮单击。不过有办法解决它。您可以使用 Touch.FrameReported 事件来获取用户在屏幕上触摸的所有点的位置(我之前在 WP7 上的某处读过它限制为两个但我无法验证)。您还可以检查用户正在执行的操作(例如向下、移动和向上),这可能对您正在执行的操作很有用。

把它放在你的 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
        }

    }
}

在“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.
}

那应该有希望为你做。

于 2012-07-02T00:31:14.140 回答