Aracılığıyla paylaş


KeyBinding Sınıf

Tanım

bir KeyGesture 'e (veya başka bir RoutedCommandICommand uygulamaya) bağlar.

public ref class KeyBinding : System::Windows::Input::InputBinding
public class KeyBinding : System.Windows.Input.InputBinding
type KeyBinding = class
    inherit InputBinding
Public Class KeyBinding
Inherits InputBinding
Devralma
Devralma

Örnekler

Aşağıdaki örnek bir KeyBinding oluşturur ve kök InputBindingCollection penceresinin öğesine ekler.

<Window.InputBindings>
  <KeyBinding Command="ApplicationCommands.Open"
              Gesture="CTRL+R" />
</Window.InputBindings>
// Creating a KeyBinding between the Open command and Ctrl-R
KeyBinding OpenCmdKeyBinding = new KeyBinding(
    ApplicationCommands.Open, 
    Key.R, 
    ModifierKeys.Control);

this.InputBindings.Add(OpenCmdKeyBinding);
' Creating a KeyBinding between the Open command and Ctrl-R
Dim OpenCmdKeyBinding As New KeyBinding(ApplicationCommands.Open, Key.R, ModifierKeys.Control)

Me.InputBindings.Add(OpenCmdKeyBinding)

Açıklamalar

, KeyBinding gibi bir KeyGestureICommandRoutedCommandile ilişkilendirir. RoutedCommand , WPF komut sisteminin arabiriminin birincil uygulamasıdır ICommand . Genel olarak, komutu yürütülürken KeyGesture komut çağrılır, ancak komut davranışı değer gibi CanExecute komuta özgü faktörlerden daha fazla etkilenir. Komut oluşturma hakkında daha fazla bilgi için bkz. Komuta Genel Bakış.

İşlev tuşları ve sayısal tuş takımı tuşları dışında, geçerli KeyGesture bir tam olarak bir Key ve bir veya daha fazla ModifierKeysiçermelidir. İşlev tuşları ve sayısal tuş takımı tuşlarının geçerli KeyGestureolması için değiştirici tuş gerektirmez. XAML veya kod aracılığıyla geçersiz KeyGesture ve geçersiz ilişkili hareket içeren bir KeyBinding belirtebilirsiniz. Örneğin, yalnızca işlevsiz bir anahtar içeren veya yalnızca değiştiriciler içeren ancak anahtar içermeyen bir KeyGesture oluşturulmasını ve bağlanmasını engelleyen bir doğrulama yoktur. Böyle bir KeyBinding hiçbir zaman ilişkili komutunu çağırmaya çalışmaz.

Genişletilebilir Uygulama Biçimlendirme Dili'nde (XAML) bir KeyBinding tanımlarken, öğesini belirtmenin KeyGestureiki yolu vardır. XAML'de bir KeyBinding oluşturmanın ilk yolu, bir söz diziminin KeyBinding anahtarlar ve değiştiricileri tek bir dize olarak belirtmesini sağlayan özniteliğini tanımlamaktırGesture, örneğin "CTRL+P". İkinci yol, öğesinin özniteliğini Key ve Modifiers özniteliklerini tanımlamaktır KeyBinding . her iki ayar KeyGesture yöntemi de eşdeğerdir ve aynı temel nesneyi değiştirir, ancak her ikisi de kullanılırsa çakışma olur. Key, Modifiersve Gesture özniteliklerinin tümü ayarlandığında, son tanımlanan özniteliği için KeyGesturekullanılır. Örneğin bir son kümesinin, önceki bir Key Hareketin yalnızca Anahtar bileşeninin üzerine yazılacağı ancak Hareketin değiştiricilerini aynı bıraktığı durumlar olabilir. Genel olarak, yalnızca XAML özniteliğini Gesture kullanmanız önerilir; bu belirsizlikten kaçınır, en kolay söz dizimini sağlar ve serileştirme için en basit gösterimi sağlar.

belirli KeyBinding bir nesne üzerinde veya sınıfına kaydederek sınıf düzeyinde tanımlanabilir RegisterClassInputBindingCommandManager . bir tanımlamanın KeyBinding en tipik yolu, bir veya daha fazla MouseBindingKeyBinding öğe bildirerek XAML'de özelliği ayarlayan InputBindings denetim şablonudur.

Oluşturucular

Name Description
KeyBinding()

KeyBinding sınıfının yeni bir örneğini başlatır.

KeyBinding(ICommand, Key, ModifierKeys)

belirtilen ve belirtilen ICommand öğesini kullanarak sınıfının yeni bir örneğini KeyBinding başlatır ve KeyModifierKeys bu örneği öğesine KeyGesturedönüştürülür.

KeyBinding(ICommand, KeyGesture)

Belirtilen ICommand ve KeyGesturekullanarak sınıfının yeni bir örneğini KeyBinding başlatır.

Alanlar

Name Description
KeyProperty

Key Bağımlılık özelliğini tanımlar.

ModifiersProperty

Modifiers Bağımlılık özelliğini tanımlar.

Özellikler

Name Description
CanFreeze

Nesnenin değiştirilemez hale getirilip getirilemeyeceğini gösteren bir değer alır.

(Devralındığı yer: Freezable)
Command

Bu giriş bağlamasıyla ilişkili olan öğesini ICommand alır veya ayarlar.

(Devralındığı yer: InputBinding)
CommandParameter

Belirli bir komut için komuta özgü verileri alır veya ayarlar.

(Devralındığı yer: InputBinding)
CommandTarget

Komutun hedef öğesini alır veya ayarlar.

(Devralındığı yer: InputBinding)
DependencyObjectType

DependencyObjectType Bu örneğin CLR türünü sarmalayan öğesini alır.

(Devralındığı yer: DependencyObject)
Dispatcher

Dispatcher Bunun DispatcherObject ilişkili olduğu öğesini alır.

(Devralındığı yer: DispatcherObject)
Gesture

Bu KeyBindingile ilişkili hareketi alır veya ayarlar.

IsFrozen

Nesnenin şu anda değiştirilebilir olup olmadığını gösteren bir değer alır.

(Devralındığı yer: Freezable)
IsSealed

Bu örneğin şu anda korumalı (salt okunur) olup olmadığını gösteren bir değer alır.

(Devralındığı yer: DependencyObject)
Key

bu KeyBindingile ilişkili öğesini KeyGesture alır veya ayarlarKey.

Modifiers

bu KeyBindingile ilişkili öğesini KeyGesture alır veya ayarlarModifierKeys.

Yöntemler

Name Description
CheckAccess()

Çağıran iş parçacığının bu DispatcherObjectöğesine erişimi olup olmadığını belirler.

(Devralındığı yer: DispatcherObject)
ClearValue(DependencyProperty)

Bir özelliğin yerel değerini temizler. Temizlenecek özellik bir DependencyProperty tanımlayıcı tarafından belirtilir.

(Devralındığı yer: DependencyObject)
ClearValue(DependencyPropertyKey)

Salt okunur özelliğin yerel değerini temizler. Temizlenecek özellik tarafından DependencyPropertyKeybelirtilir.

(Devralındığı yer: DependencyObject)
Clone()

nesnesinin değerlerinin Freezablederin kopyalarını oluşturan değiştirilebilir bir kopyasını oluşturur. Nesnenin bağımlılık özelliklerini kopyalarken, bu yöntem ifadeleri (artık çözümlenmeyebilir) kopyalar, ancak animasyonları veya geçerli değerlerini kopyalar.

(Devralındığı yer: Freezable)
CloneCore(Freezable)

Belirtilen nesnenin özelliklerinin temel (animasyonsuz) değerlerini kopyalar.

(Devralındığı yer: InputBinding)
CloneCurrentValue()

Geçerli değerlerini kullanarak öğesinin Freezable değiştirilebilir bir kopyasını (derin kopya) oluşturur.

(Devralındığı yer: Freezable)
CloneCurrentValueCore(Freezable)

Belirtilen nesnenin özelliklerinin geçerli değerlerini kopyalar.

(Devralındığı yer: InputBinding)
CoerceValue(DependencyProperty)

Belirtilen bağımlılık özelliğinin değerini zorlama. Bu, çağrısında CoerceValueCallbackvar olan bağımlılık özelliği için özellik meta verilerinde belirtilen herhangi bir DependencyObject işlevi çağırarak gerçekleştirilir.

(Devralındığı yer: DependencyObject)
CreateInstance()

Freezable sınıfının yeni bir örneğini başlatır.

(Devralındığı yer: Freezable)
CreateInstanceCore()

bir örneğini KeyBindingoluşturur.

Equals(Object)

Sağlanan DependencyObject öğesinin geçerli DependencyObjectile eşdeğer olup olmadığını belirler.

(Devralındığı yer: DependencyObject)
Freeze()

Geçerli nesneyi değiştirilemez hale getirir ve özelliğini olarak trueayarlarIsFrozen.

(Devralındığı yer: Freezable)
FreezeCore(Boolean)

Freezable Nesneyi değiştirilemez hale getirir veya değiştirilemez hale getirilip getirilemeyeceğini test eder.

(Devralındığı yer: Freezable)
GetAsFrozen()

temel (animasyonsuz) özellik değerlerini kullanarak donmuş bir kopyasını Freezableoluşturur. Kopya dondurulacağından, dondurulan alt nesneler başvuruyla kopyalanır.

(Devralındığı yer: Freezable)
GetAsFrozenCore(Freezable)

Temel (animasyonsuz) özellik değerleri kullanarak örneği belirtilen Freezable öğesinin donmuş bir kopyası yapar.

(Devralındığı yer: InputBinding)
GetCurrentValueAsFrozen()

Geçerli özellik değerlerini kullanarak donmuş Freezable bir kopyasını oluşturur. Kopya dondurulacağından, dondurulan alt nesneler başvuruyla kopyalanır.

(Devralındığı yer: Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Geçerli örneği, belirtilen Freezableöğesinin donmuş bir kopyası yapar. Nesne animasyonlu bağımlılık özelliklerine sahipse, geçerli animasyonlu değerleri kopyalanır.

(Devralındığı yer: InputBinding)
GetHashCode()

Bu DependencyObjectiçin bir karma kodu alır.

(Devralındığı yer: DependencyObject)
GetLocalValueEnumerator()

Hangi bağımlılık özelliklerinin bu DependencyObjectüzerinde yerel olarak ayarlı değerlere sahip olduğunu belirlemek için özel bir numaralandırıcı oluşturur.

(Devralındığı yer: DependencyObject)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
GetValue(DependencyProperty)

Bir öğesinin bu örneğindeki bir bağımlılık özelliğinin DependencyObjectgeçerli etkin değerini döndürür.

(Devralındığı yer: DependencyObject)
InvalidateProperty(DependencyProperty)

Belirtilen bağımlılık özelliği için geçerli değeri yeniden değerlendirir.

(Devralındığı yer: DependencyObject)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
OnChanged()

Geçerli Freezable nesne değiştirildiğinde çağrılır.

(Devralındığı yer: Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Bu üye Windows Presentation Foundation (WPF) altyapısını destekler ve doğrudan kodunuzdan kullanılması amaçlanmamıştır.

(Devralındığı yer: Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Yeni ayarlanmış bir DependencyObjectType veri üyesi için uygun bağlam işaretçilerinin oluşturulmasını sağlar.

(Devralındığı yer: Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Bunun DependencyObject üzerindeki herhangi bir bağımlılık özelliğinin etkin değeri her güncelleştirildiğinde çağrılır. Değiştirilen belirli bağımlılık özelliği olay verilerinde bildirilir.

(Devralındığı yer: DependencyObject)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

türündeki DependencyObjectFreezabledeğişen bağımlılık özelliğine yanıt olarak herhangi Changed bir işleyici çağırmak için uygulamasını OnPropertyChanged(DependencyPropertyChangedEventArgs) geçersiz kılar.

(Devralındığı yer: Freezable)
ReadLocalValue(DependencyProperty)

Varsa, bağımlılık özelliğinin yerel değerini döndürür.

(Devralındığı yer: DependencyObject)
ReadPreamble()

Freezable geçerli bir iş parçacığından erişildiğinden emin olur. öğesinin Freezable devralanları, bağımlılık özellikleri olmayan veri üyelerini okuyan herhangi bir API'nin başında bu yöntemi çağırmalıdır.

(Devralındığı yer: Freezable)
SetCurrentValue(DependencyProperty, Object)

Bir bağımlılık özelliğinin değerini, değer kaynağını değiştirmeden ayarlar.

(Devralındığı yer: DependencyObject)
SetValue(DependencyProperty, Object)

Bağımlılık özelliği tanımlayıcısı tarafından belirtilen bir bağımlılık özelliğinin yerel değerini ayarlar.

(Devralındığı yer: DependencyObject)
SetValue(DependencyPropertyKey, Object)

Bağımlılık özelliğinin tanımlayıcısı tarafından belirtilen salt okunur bağımlılık özelliğinin DependencyPropertyKey yerel değerini ayarlar.

(Devralındığı yer: DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Serileştirme işlemlerinin sağlanan bağımlılık özelliği için değeri serileştirmesi gerekip gerekmediğini gösteren bir değer döndürür.

(Devralındığı yer: DependencyObject)
ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)
VerifyAccess()

Çağıran iş parçacığının bu DispatcherObjectöğesine erişmesini zorlar.

(Devralındığı yer: DispatcherObject)
WritePostscript()

Changed için Freezable olayını oluşturur ve yöntemini çağırırOnChanged(). öğesinden Freezable türetilen sınıflar, bağımlılık özellikleri olarak depolanmayan sınıf üyelerini değiştiren herhangi bir API'nin sonunda bu yöntemi çağırmalıdır.

(Devralındığı yer: Freezable)
WritePreamble()

öğesinin Freezable dondurulmadığını ve geçerli bir iş parçacığı bağlamından erişildiğini doğrular. Freezable devralanların, bağımlılık özellikleri olmayan veri üyelerine yazan herhangi bir API'nin başında bu yöntemi çağırması gerekir.

(Devralındığı yer: Freezable)

Ekinlikler

Name Description
Changed

veya içerdiği bir nesne değiştirildiğinde Freezable gerçekleşir.

(Devralındığı yer: Freezable)

Şunlara uygulanır

Ayrıca bkz.