إذا لم نتمكن من ربط القيادة وMouseBinding، وماذا علينا ان نفعل؟
-
07-07-2019 - |
سؤال
وأنا أحب أن تكون قادرة على استخدام MouseBinding
العادية للقبض على CTRL-انقر الحدث على بلدي TextBlock
. للأسف الملكية Command
ليست خاصية التبعية وأنا باستخدام MVVM، لذلك لا يمكن ربط لبلدي viewmodel.
وكيف يمكن أن غادر مايكروسوفت من هذه الوظيفة الأساسية؟ هل هناك طرق سهلة للكشف عن CTRL-النقرات وربط لهم أمر في بلدي viewmodel؟
المحلول
ويمكنك دائما أن نلقي نظرة على استخدام القيادة المرفقة السلوكيات .
نصائح أخرى
وكتبت أعتقد أنني كان يشير إلى استخدام عضو TextBlock
InputBindings
ل.
في صافي يرث 4 InputsBinding
s الآن من Freezable
، وحتى الآن الممتلكات Command
هي الاعتماد على الملكية (انظر <لأ href = "http://www.thomaslevesque.com/2009/10/26/vs2010-binding-support- في inputbindings / "يختلط =" نوفولو noreferrer "> ربط الدعم في InputBindings )، حل القضية ملزمة.
إذا كنت عالقة مع الصافي 3.5 يمكنك إنشاء بعض الخصائص تعلق على أي نوع من الحدث الذي تريده. في وظيفة OnCommandChanged
الخاص إضافة معالج الحدث، ومرشح على أساس الصفات (مثل مفتاح Control
أو ClickCount
) في طريقة PropertyChangedCallback
الخاص بك.