I have a stackpanel that keeps getting focus when I tab around in the application.

Using snoop I can see that the stackpanel has a ContentControl which has a ContentPresenter. It is the ContentControl that gets the focus. How can I disable this? And why is this default behavior?

有帮助吗?

解决方案

This is not the default behavior, if it has been overwritten by some resource then you can reset it with

KeyboardNavigation.IsTabStop="False"

Or alternatively...

FocusManager.IsFocusScope="False"

其他提示

Had a similar issue with a DataTemplate that was using a StackPanel as container. The DataTemplate was then used for ListBox items. None of the suggestions worked for me to prevent the items from receiving tab stops, until I used the following on the actual listbox:

KeyboardNavigation.TabNavigation="None"
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top