0
我有兩個自定義控件。第一個包含一個文本框和一個彈出/下拉菜單。另一個由擴展器和擴展器內的一些內容組成。WPF:如何在沒有焦點的自定義控件上製作KeyBinding
大多數情況下,我會在第一個彈出窗口中顯示第二個控件。
第二個控件應該有一個用於切換擴展器的熱鍵。
如何在第二個控件中創建一個鍵綁定,使其即使焦點位於第一個控件的文本框內也能工作?
我有兩個自定義控件。第一個包含一個文本框和一個彈出/下拉菜單。另一個由擴展器和擴展器內的一些內容組成。WPF:如何在沒有焦點的自定義控件上製作KeyBinding
大多數情況下,我會在第一個彈出窗口中顯示第二個控件。
第二個控件應該有一個用於切換擴展器的熱鍵。
如何在第二個控件中創建一個鍵綁定,使其即使焦點位於第一個控件的文本框內也能工作?
我不認爲焦點對於KeyBindings工作總是至關重要的......你是否嘗試將KeyBinding的CommandTarget設置爲Expander控件?
類似下面...
<KeyBinding Key="O" Modifiers="Control"
Command="localns:ApplicationWindow.Open"
CommandTarget="{x:Static localns:MyWindow.CustomControlInstance.Expander}" />
讓我知道,如果這有助於。
我認爲你不能,沒有一些技巧。 最簡單的方法是創建一個屬性,將其綁定到Expander.IsExpanded屬性,並在你的'Command'中進行更改。但是你的'Command'應該是第一個控件(或者帶有文本框)的''keybind''。 – stukselbax