KeyGesture Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет сочетание клавиш, которое может использоваться для вызова команды.
public ref class KeyGesture : System::Windows::Input::InputGesture
[System.ComponentModel.TypeConverter(typeof(System.Windows.Input.KeyGestureConverter))]
public class KeyGesture : System.Windows.Input.InputGesture
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Input.KeyGestureConverter))>]
type KeyGesture = class
inherit InputGesture
Public Class KeyGesture
Inherits InputGesture
- Наследование
- Атрибуты
Примеры
В следующем примере показано, как привязать Close команду к с KeyGesture помощью KeyBinding.
KeyGesture CloseCmdKeyGesture = new KeyGesture(
Key.L, ModifierKeys.Alt);
KeyBinding CloseKeyBinding = new KeyBinding(
ApplicationCommands.Close, CloseCmdKeyGesture);
this.InputBindings.Add(CloseKeyBinding);
Dim CloseCmdKeyGesture As New KeyGesture(Key.L, ModifierKeys.Alt)
Dim CloseKeyBinding As New KeyBinding(ApplicationCommands.Close, CloseCmdKeyGesture)
Me.InputBindings.Add(CloseKeyBinding)
В следующем примере показано, как использовать KeyGesture в XAML. Обратите внимание, что использование XAML не объявляет элемент напрямую <KeyGesture>
. Использование этого элемента объекта невозможно, так как KeyGesture не предоставляет открытый конструктор без параметров. Вместо этого использование XAML использует поведение typeconverter для объявления целого KeyGesture встроенного значения в качестве значения атрибута Gesture
.
<Window.InputBindings>
<KeyBinding Command="ApplicationCommands.Open"
Gesture="CTRL+R" />
</Window.InputBindings>
Комментарии
В большинстве случаев KeyGesture объект должен быть связан с одним или несколькими ModifierKeys. Исключениями из этого правила являются функциональные ключи и числовые клавиши клавиатуры, которые могут быть допустимыми KeyGesture сами по себе. Например, можно создать KeyGesture с помощью только клавиши F12, но для использования ключа X в KeyGesture объекте необходимо связать его с ключом-модификатором.
Можно использовать KeyBinding для привязки KeyGesture к ICommand, чтобы команда вызывалась при возникновении KeyGesture .
Для KeyGesture использования XAML свойство, обычно заданное в XAML, равно , в Gestureслучаях, когда жест представляет как стандартный ключ, так и ключ модификатора. Вы также можете задать Gesture для свойства только ключ функции или просто сочетание клавиш-модификаторов. Однако чаще всего свойство устанавливается Key , если предполагаемая привязка команды является функциональным ключом без модификаторов или Modifiers если предполагаемая привязка команды предназначена только для ключей модификаторов.
Использование атрибута XAML
<object property="oneOrMoreModifierKeys+key"/>
- or -
<object property="functionKey"/>
Значения XAML
functionKey
Key
Одно значение ключа, которое должно быть одним из функциональных ключей (F1–12) или числовыми клавишами клавиатуры.
oneOrMoreModifierKeys
Один или несколько ключей-модификаторов, определенных ModifierKeys перечислением, разделенных символом "+".
key
Key
Значение одного ключа.
Конструкторы
KeyGesture(Key) |
Инициализирует новый экземпляр класса KeyGesture указанным значением Key. |
KeyGesture(Key, ModifierKeys) |
Инициализирует новый экземпляр класса KeyGesture с заданными свойствами Key и ModifierKeys. |
KeyGesture(Key, ModifierKeys, String) |
Инициализирует новый экземпляр класса KeyGesture заданными Key, ModifierKeys и отображаемой строкой. |
Свойства
DisplayString |
Получает строковое представление данного KeyGesture. |
Key |
Получает клавишу, связанную с данным KeyGesture,. |
Modifiers |
Клавиши CTRL, SHIFT или ALT, связанные с данным KeyGesture. |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetDisplayStringForCulture(CultureInfo) |
Возвращает строку, которая может использоваться для отображения KeyGesture. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
Matches(Object, InputEventArgs) |
Определяет, соответствует ли данный KeyGesture вводу, связанному с заданным объектом InputEventArgs. |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |