2010-09-07 16 views
11

Süreyi, DoubleClick in WPF için geçerli olan milisaniye cinsinden nasıl alabilirim. Windows Forms'takiyle aynı SystemInformation.DoubleClickTime-mülkiyeti vardı.WPF'de çift tıklama zamanını alma

+0

Evet, Windows Forms sınıfını kullanın. MouseDevice aynı bilgi kaynağını kullanır. –

cevap

17

doğrudan P/Invoke to call GetDoubleClickTime kullanabilirsiniz:

[DllImport("user32.dll")] 
static extern uint GetDoubleClickTime(); 

Bu çift tıklama için milisaniye sayısını döndürür.

+0

+1 Cevabınız için teşekkür ederiz. Ayrıca P/Invoke (ve Windows formları değil) olmayan bir sürümü var mı? P/Invoke kullanmamayı denedim, çünkü kullanmanın verdiği cezaların ne olduğunu bilmiyorum (kod çalıştırma kısıtlaması dışında). – HCL

+1

@HCL: Pencerelerin formlarını kullanmak veya P/Invoke kullanmak. Herhangi bir bağımlılık eklemediğinden (Windows'un bir parçası olan user32.dll dışında) P/Invoke biraz daha hafiftir. Yerel WPF seçeneği yok. [Windows Forms sınıfı, btw, sadece Windows API'sini çağırmak için P/Invoke kullanır ...] –

+0

+1, WPF'deki tüm InputManager/MouseDevice sınıflarını iki kez kontrol etmek için gittim ve başka bir yol yok gibi görünüyor. P/Invoke veya WinForms. – user7116

İlgili konular