MouseBinding 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將 a MouseGesture 綁定到 a RoutedCommand (或其他 ICommand 實作)。
public ref class MouseBinding : System::Windows::Input::InputBinding
public class MouseBinding : System.Windows.Input.InputBinding
type MouseBinding = class
inherit InputBinding
Public Class MouseBinding
Inherits InputBinding
- 繼承
- 繼承
範例
以下範例展示了如何使用 a MouseBinding 將 a MouseGesture 綁定到 RoutedCommand。
<MouseBinding Gesture="Control+WheelClick"
Command="ApplicationCommands.Open" />
MouseGesture OpenCmdMouseGesture = new MouseGesture();
OpenCmdMouseGesture.MouseAction = MouseAction.WheelClick;
OpenCmdMouseGesture.Modifiers = ModifierKeys.Control;
MouseBinding OpenCmdMouseBinding = new MouseBinding();
OpenCmdMouseBinding.Gesture = OpenCmdMouseGesture;
OpenCmdMouseBinding.Command = ApplicationCommands.Open;
this.InputBindings.Add(OpenCmdMouseBinding);
Dim OpenCmdMouseGesture As New MouseGesture()
OpenCmdMouseGesture.MouseAction = MouseAction.WheelClick
OpenCmdMouseGesture.Modifiers = ModifierKeys.Control
Dim OpenCmdMouseBinding As New MouseBinding()
OpenCmdMouseBinding.Gesture = OpenCmdMouseGesture
OpenCmdMouseBinding.Command = ApplicationCommands.Open
Me.InputBindings.Add(OpenCmdMouseBinding)
備註
A MouseBinding 將 a MouseGesture 與實 ICommand 作關聯起來。 RoutedCommand 是 WPF 指令系統介面的主要實作 ICommand 。 一般來說,當執行 時MouseGesture,指令會被呼叫,但指令行為會進一步受到命令特定的因素影響,例如值。CanExecute 欲了解更多指揮相關資訊,請參閱 指揮概述。
在可擴充應用程式標記語言(XAML)中定義 時MouseBinding,有兩種方式可以指定 。MouseGesture 在 XAML 中建立 的 MouseBinding 第一個方法是定義 Gesture 元素的 MouseBinding 屬性,使語法能將滑鼠動作與修飾符指定為單一字串;例如「CTRL+LeftClick」。 第二種方法是定義 MouseAction 元素的 MouseBinding 屬性。 兩種設定 MouseGesture 方式是等價的,且修改的是同一底層物件,但若兩者同時使用會產生衝突。 當屬性 MouseActionGesture 和 都被設定時,該手勢無效。 一般建議僅 Gesture 使用 XAML 的屬性,即使未指定修飾符;這樣避免歧義,語法最流暢,序列化表現最直接。
A MouseBinding 可以在特定物件上定義,或在類別層級透過在類別上註冊 a RegisterClassInputBindingCommandManager 來定義。 定義 a MouseBinding 最常見的方式是在控制範本中,透過宣告一個或多個MouseBindingKeyBinding元素來設定InputBindings屬性。
建構函式
| 名稱 | Description |
|---|---|
| MouseBinding() |
初始化 MouseBinding 類別的新執行個體。 |
| MouseBinding(ICommand, MouseGesture) |
使用指定的指令與滑鼠手勢初始化該 MouseBinding 類別的新實例。 |
欄位
| 名稱 | Description |
|---|---|
| MouseActionProperty |
識別 MouseAction 依賴性質。 |
屬性
| 名稱 | Description |
|---|---|
| CanFreeze |
會得到一個值,表示該物件是否能被設定為不可修改。 (繼承來源 Freezable) |
| Command |
取得或設定與此輸入綁定相關的 。ICommand (繼承來源 InputBinding) |
| CommandParameter |
取得或設定特定指令的指令資料。 (繼承來源 InputBinding) |
| CommandTarget |
取得或設定指令的目標元素。 (繼承來源 InputBinding) |
| DependencyObjectType |
會取得 DependencyObjectType 包裹此實例 CLR 類型的 。 (繼承來源 DependencyObject) |
| Dispatcher |
了解 Dispatcher 這與此 DispatcherObject 有關。 (繼承來源 DispatcherObject) |
| Gesture |
取得或設定與此 MouseBinding關聯的手勢。 |
| IsFrozen |
會得到一個值,表示該物件目前是否可修改。 (繼承來源 Freezable) |
| IsSealed |
會獲得一個值,表示該實例目前是否封存(唯讀)。 (繼承來源 DependencyObject) |
| MouseAction |
會得到或設定 MouseAction 與此 MouseBinding相關的 。 |
方法
事件
| 名稱 | Description |
|---|---|
| Changed |
當 Freezable 它所包含的物件被修改時,會發生這種情況。 (繼承來源 Freezable) |