2009-08-24 169 views

回答

21

看到Focus Overview

鍵盤焦點是指當前正在接收 鍵盤輸入的元素。整個桌面 上只能有一個鍵盤焦點的元素。在WPF中,鍵盤焦點爲 的元素將IsKeyboardFocused設置爲true。靜態屬性 Keyboard類上的FocusedElement獲取當前 具有鍵盤焦點的元素。

邏輯焦點是指焦點 範圍內的FocusManager.FocusedElement。焦點範圍是一個跟蹤其範圍內的FocusedElement的元素。當鍵盤焦點離開焦點 範圍時,焦點元素將失去鍵盤焦點,但會保留邏輯焦點 。當鍵盤焦點返回焦點範圍時,焦點元素將獲得鍵盤焦點。這允許在多個焦點範圍之間改變鍵盤 焦點,但是確保當焦點 返回到焦點範圍時焦點範圍中的焦點元素重新獲得鍵盤焦點。

6

我發現了一系列關於WPF焦點的博文。

  1. Part1ItsBasicallyFocus

  2. Part2ChangingWPFFocusInCode

  3. Part3ShiftingFocusToTheFirstAvailableElementInWPF

他們都是很好的閱讀,但第1部分與邏輯VS鍵盤焦點專門處理。第三部分展示了一種將焦點設置到UserControl中的UI元素的好方法。

+2

這些文章已移動,目前可以在: http://julmar.com/blog/mark/?p=52 http://julmar.com/blog/mark/?p=51 http ://julmar.com/blog/mark/?p = 50 – mtlynch 2011-08-18 01:09:53

+1

僅鏈接答案容易受到鏈接腐爛的影響。 – ANeves 2017-09-21 14:57:35