2012-06-06 30 views
11

Tôi có ngăn xếp chồng tiếp tục tập trung khi tôi tab xung quanh trong ứng dụng.Cách tắt tính năng dừng tab trên bảng xếp chồng

Sử dụng snoop Tôi có thể thấy rằng stackpanel có một ContentControl có ContentPresenter. Đó là ContentControl được tập trung. Làm thế nào tôi có thể vô hiệu hóa điều này? Và tại sao hành vi mặc định này?

+0

Một 'StackPanel' sẽ không thể lấy tiêu cự trừ khi bạn đặt' Focusable = "True" '(mặc định là' False'). 'StackPanel' này nằm ở đâu,' Window'/'UserControl',' ItemsControl'? –

+0

Điều gì sẽ xảy ra khi bạn đặt 'Focusable =" False "' trên ContentControl? – Tyrsius

Trả lời

17

Đây không phải là hành vi mặc định, nếu nó đã được ghi đè bởi một số tài nguyên thì bạn có thể thiết lập lại nó với

KeyboardNavigation.IsTabStop="False" 

Hoặc cách khác ...

FocusManager.IsFocusScope="False" 
+6

Sự khác biệt giữa hai cách tiếp cận này là gì? –

7

Đã có một vấn đề tương tự với một DataTemplate đang sử dụng StackPanel làm vùng chứa. DataTemplate sau đó được sử dụng cho các mục ListBox. Không có đề xuất nào làm việc cho tôi để ngăn các mục nhận được các điểm dừng tab, cho đến khi tôi sử dụng các mục sau đây trên hộp danh sách thực tế:

KeyboardNavigation.TabNavigation="None" 
+0

Làm việc tốt cho tôi! – psulek

+0

Hoặc bằng mã sau: 'KeyboardNavigation.SetTabNavigation (điều khiển, KeyboardNavigationMode.None);' – Pollitzer

+0

Làm thế nào để bạn làm điều đó trong UWP? Nói "không được hỗ trợ" – Nilzor

Các vấn đề liên quan