2010-06-21 26 views
7

Dokunmatik ekranla bazı testler yapmaya başlıyorum ve UIControl "IsManipulationEnabled" özelliğine sahipse Doğru o zaman basın ve tutma hareketiyle (WIN7) ateşlenen MouseRightClick Olayları yakalanmaz. Yanlış bir şey mi yapıyorum?WPF denetimi, basın ve tutma olayını (sağ tıklama) IsManipulationEnabled ayarlandığında yakalamıyor

public MainWindow() 
    { 
     InitializeComponent(); 
     WC_Rectangle.IsManipulationEnabled = true; 
     WC_Rectangle.MouseRightButtonUp += new MouseButtonEventHandler(WC_Rectangle_MouseRightButtonUp); 
    } 

    void WC_Rectangle_MouseRightButtonUp(object sender, MouseButtonEventArgs e) 
    { 
     System.Diagnostics.Debug.WriteLine("RIGHT CLICK : " + sender.ToString()); 
    } 

cevap

-2

kullanın Davranış yerine

2

IsManipulationEnabled = true; ayarladıktan sonra tüm touchevents yakalanır ve Manipülasyon olaylara onları dönüştürmek yapar WC_Rectangle tarafından ele. Böylece touchevents, onları kontrol eden kontrole geri tünel vermez, bu da kontrolün işlenmemiş dokunma olaylarını fare olaylarına (varsayılan) yükseltemeyeceği anlamına gelir. bkz:

http://nui.joshland.org/2010/04/why-wont-wpf-controls-work-with-touch.html

1

Eğer manipülasyon olayları fare olayları almalısınız iptal edin.