2011-08-03 59 views
0

當我需要點擊和雙擊區分,我已經使用定時器該解決方案msdn.doubleclick問題與定時器使用鼠標雙擊

所以我有一個計時器功能誰看起來像這樣

private void doubleClickTimer_Tick(object sender, EventArgs e) 
{ 
    milliseconds += 100; 
    if (milliseconds >= SystemInformation.DoubleClickTime) 
    { 
    doubleClickTimer_.Stop(); 
    if (isDoubleClick) 
     executeDoubleClick(); 
    else 
     ExecuteSingleClick(); 
    isFirstClick = true; 
    isDoubleClick = false; 
    } 
} 

這工作正常,但在ExecuteSingleClick我需要MouseEventArgs e,但我有的是從doubleClickTimer函數的EventArgs e,有沒有辦法從doubleClickTimer得到MouseEventArgs,所以我可以這樣寫:

ExecuteSingleClick(MouseEventArgs e) 
{ 
    MouseButton button = e.button; 
    .... 
} 

回答

1

在啓動計時器之前,請將其標記屬性設置爲mouseeventargs參數(e)。然後,您可以在timer.tick事件回調中使用它(將它傳遞給您的執行(雙擊)功能)。