2012-07-01 157 views
6

在我的WP 7.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 
     } 

    } 
} 

將這個在「在這裏做的東西」的一部分,你會檢查,如果接觸點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. 
} 

這應該有希望爲你做。