lunedì 5 dicembre 2011

Convertire un click in doubleclick

Utilzzando un controllo di terze parti, mi sono accorto che il suo produttore non aveva implementato l’evento double click in un punto che secondo me era essenziale, allora con qualche riga di codice mi sono trasformato un evento click in double click:
private DateTime mTimeToDoubleC = DateTime.Now;

private void button1_Click(object sender, EventArgs e)
{
    DateTime adesso = DateTime.Now;
    if ((adesso - mTimeToDoubleC) < new TimeSpan(0, 0, 0, 0, SystemInformation.DoubleClickTime))
    {
        //Esegui il metodo per il double click...
    }
    else
    {
        //Esegui il metodo per il click normale...
    }
}
Come si può vedere utilizzando la proprietà SystemInformation.DoubleClickTime ottengo un double click perciso come impostato nel sistema.