UIElement.OnMouseDown(MouseButtonEventArgs) Yöntem

Tanım

İşlenmeyen MouseDown bir ekli olay, bu sınıftan türetilen yolundaki bir öğeye ulaştığında çağrılır. Bu olay için sınıf işleme eklemek için bu yöntemi uygulayın.

protected:
 virtual void OnMouseDown(System::Windows::Input::MouseButtonEventArgs ^ e);
protected virtual void OnMouseDown (System.Windows.Input.MouseButtonEventArgs e);
abstract member OnMouseDown : System.Windows.Input.MouseButtonEventArgs -> unit
override this.OnMouseDown : System.Windows.Input.MouseButtonEventArgs -> unit
Protected Overridable Sub OnMouseDown (e As MouseButtonEventArgs)

Parametreler

e
MouseButtonEventArgs

MouseButtonEventArgs Olay verilerini içeren. Bu olay verileri, basılan fare düğmesi ve işlenen durum hakkındaki ayrıntıları bildirir.

Açıklamalar

Fare düğmesi eylemleri, ayrılmış bir giriş yöneticisi tarafından da işlenir. Giriş ve komut bağlamaları gibi fare düğmesi eylemlerini kullanan diğer programlama özellikleri, genel bir fare düğmesi eylemi olarak sunulmadan önce eylem için işleyicileri çağırabilir. Bu giriş sistemi özellikleri olayı işlenmiş OnMouseDown olarak işaretlerse Mouse.MouseDown çağrılmıyordur.

Olayı işlenmiş olarak işaretlemek için bu sınıf işleyicisini kullanırsanız, olası olarak şu olayları etkilersiniz: MouseLeftButtonDown ve MouseRightButtonDown. Bu olaylardan biri alındığında alıcı öğede Mouse.MouseDown tetiklenebilir.

Bu olayı sınıf işlemede işleniyor olarak işaretlerseniz, alt olaylar yine de tetiklenir; ancak olay verilerinde işlenen durumu geçirirler. Olay sınıf işlemede işlenirse, işleyicileri eklemek için ile handledEventsTootrue açıkça kullanmadığınız AddHandler(RoutedEvent, Delegate, Boolean) sürece alt olaylar için örnek işleyicileri çağrılmaz. Bu sınıf işleyicileri ile handledEventsTootrueimzaya RegisterClassHandler(Type, RoutedEvent, Delegate, Boolean) kaydedilmediği sürece sınıf işleyicileri de çağrılmaz. öğesini işleyerek OnMouseDown, sınıfınızın tüm olası fare düğmesi aşağı eylemlerinin hesaba eklendiğini ima ediyor olursunuz. Bu davranış istenmeyen bir davranış olabilir; Bu nedenle, olayları işlenmiş olarak işaretlemek için bu sanal yöntemi kullanırken dikkatli olun.

Düğmeye özgü doğrudan olayların her biri de sanal bir Açık* yöntemine sahiptir; Bu düğmeye özgü sınıf işleyicilerini geçersiz kılmanın daha uygun olup olmadığını göz önünde bulundurun.

Bu yöntemin varsayılan uygulaması yoktur. Devralmadaki bir ara sınıf bu yöntemi uygulayabileceğinden, uygulamanızda temel uygulamayı çağırmanızı öneririz.

Bu yöntemin amacı, ortak dil çalışma zamanı (CLR) olay deseni On* yöntemlerine benzer: Bu yöntem, örnek işleyicisi yerine sınıf işleyicisi oluşturarak türetilmiş sınıflardan eşleşen olayı işlemek için araçlar sağlar. Bu durumda eşleşen olay yönlendirilmiş bir olaydır. Yönlendirilen bir olay, işleyicileri çağıracak öğe olması gerekmeyen bir alt öğe tarafından tetiklenebildiği için, Yönlendirilen olaylar için On* yöntemlerinin uygulama deseni farklıdır. Bu nedenle uygulamanızın olay verilerinin kaynak özelliklerini incelemesi gerekir. Çoğu durumda olayı yeniden değerlendirmeye çalışmamalıdır.

Bu yöntemi geçersiz kılarak veya ile RegisterClassHandlersınıf işleyicileri kaydederek türetilmiş sınıfları UIElement , olay yolu boyunca olay alındığında özel sınıf işleyici yöntemlerini çağırabilir. Sınıf işlemenin uygun olduğu senaryolardan biri, olay verilerini işlemek ve yönlendirilen olayı işlendiği şekilde işaretlemektir.

Şunlara uygulanır

Ayrıca bkz.