KeyBinding Sınıf

Tanım

a'ya KeyGesture (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 bunu InputBindingCollection kök 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

AKeyBinding, gibi RoutedCommandbir KeyGestureICommandile ilişkilendirir. RoutedCommand , WPF komut sistemi arabiriminin birincil uygulamasıdır ICommand . Genel olarak, komutu yürütürken KeyGesture komutu ç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ı, geçerli KeyGesturebir olmak için değiştirici tuş gerektirmez. XAML veya kod aracılığıyla geçersiz KeyGesture ve KeyBinding ilişkili bir hareketle geçersiz ve bir belirtebilirsiniz. Örneğin, yalnızca işlevsiz bir anahtar 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 oluşturmanın KeyBinding ilk yolu, bir söz diziminin anahtarları ve değiştiricileri tek bir dize olarak belirtmesini sağlayan öğesinin KeyBinding özniteliğini tanımlamaktırGesture, örneğin "CTRL+P". İkinci yol, öğesinin özniteliğini Key ve Modifiers özniteliklerini tanımlamaktır KeyBinding . ayarının KeyGesture her iki yolu da eşdeğerdir ve aynı temel alınan nesneyi değiştirir, ancak her ikisi de kullanılırsa bir çakışma olur. Key, Modifiersve Gesture özniteliklerinin tümü ayarlandığında, için en son tanımlanan öznitelik kullanılırKeyGesture. Örneğin, bir kümenin önceki Hareketin Key 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 nesnede veya sınıfına kaydederek RegisterClassInputBindingCommandManager sınıf düzeyinde tanımlanabilir. öğesini tanımlamanın KeyBinding en tipik yolu, bir veya daha fazla MouseBindingKeyBinding öğeyi bildirerek XAML'de özelliğini ayarlayan InputBindings denetim şablonunun içindedir.

Oluşturucular

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 bir KeyGestureöğesine dö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

KeyProperty

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

ModifiersProperty

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

Özellikler

CanFreeze

Nesnenin değiştirilemez hale getirilip getirilemeyeceğini belirten 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ğunu 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ı olup olmadığını belirten bir değer alır (salt okunur).

(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

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 kopyalar (artık çözümlenmeyebilir) ancak animasyonları veya geçerli değerlerini kopyalamıyor.

(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 DependencyObjectvar olan bağımlılık özelliği için özellik meta verilerinde belirtilen herhangi bir CoerceValueCallback 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.

CreateInstanceCore()

bir örneğini InputBindingoluşturur.

(Devralındığı yer: InputBinding)
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 öğesinin dondurulan Freezablebir kopyasını oluşturur. Kopya donduruldu olduğundan, dondurulan tüm alt nesneler başvuruyla kopyalanır.

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

Temel (animasyonlu olmayan) özellik değerlerini kullanarak örneği belirtilen Freezable öğesinin dondurulan bir kopyası yapar.

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

Geçerli özellik değerlerini kullanarak öğesinin dondurulan Freezable bir kopyasını oluşturur. Kopya donduruldu olduğundan, dondurulan tüm alt nesneler başvuruyla kopyalanır.

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

Geçerli örneği, belirtilen Freezableöğesinin dondurulan bir kopyası yapar. Nesnenin animasyonlu bağımlılık özellikleri varsa, 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 özelleştirilmiş bir numaralandırıcı oluşturur.

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

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

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

Bir öğesinin bu örneğindeki bağımlılık özelliğinin DependencyObjectgeçerli geçerli 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 Objectöğesinin sığ 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)

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

(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)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Üzerindeki DependencyObject 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 olunmasını sağlar. öğesinin Freezable devralıcıları, 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 belirten bir değer döndürür.

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

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

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

Çağıran iş parçacığının bu DispatcherObjecterişimine sahip olmasını 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 inheritor'lar bağımlılık özellikleri olmayan veri üyelerine yazan herhangi bir API'nin başında bu yöntemi çağırmalıdır.

(Devralındığı yer: Freezable)

Ekinlikler

Changed

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

(Devralındığı yer: Freezable)

Şunlara uygulanır

Ayrıca bkz.