我有一个奇怪的情况。
我需要在codebehind中创建一个StackPanel。然后我需要将该stackpanel绑定到xaml中的UI。
通常我会为此使用ContentControl。但它有焦点问题(它不能阻止Tab键顺序Focusable =“False”没有效果)。我也试过了一个用户控件,但是有同样的问题。
所以我需要使用其他一些控件。我决定成立一个小组。 (StackPanel看起来和任何面板一样好。)
但是,我似乎无法找到一种方法来绑定我的Xaml中的“In Code”堆栈面板?
有办法做到这一点吗? (没有使用contentcontrol或usercontrol)
答案 0 :(得分:1)
答案 1 :(得分:0)
在KAXAML中对此进行了测试,当按下TAB时,焦点不会转到ContentPresenter或ContentControl中定义的任何项目。
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel>
<TextBox>aaaaa</TextBox>
<TextBox>bbbbb</TextBox>
<ContentControl Focusable="False">
<ContentControl.ContentTemplate>
<DataTemplate>
<StackPanel Focusable="False" Background="Red" Width="100" Height="50"></StackPanel>
</DataTemplate>
</ContentControl.ContentTemplate>
</ContentControl>
<ContentControl Focusable="False">
<ContentControl.ContentTemplate>
<DataTemplate>
<TextBox Focusable="False">hello</TextBox>
</DataTemplate>
</ContentControl.ContentTemplate>
</ContentControl>
<ContentPresenter Focusable="False">
<ContentPresenter.Content>
<TextBox Focusable="False">hello</TextBox>
</ContentPresenter.Content>
</ContentPresenter>
<TextBox>ccccc</TextBox>
<TextBox>ddddd</TextBox>
</StackPanel>
</Page>