要通过ListView呈现的控件允许正确的Tab键顺序,我已将其添加到ListView控件的顶部:
<ListView.ItemContainerStyle>
<Style>
<Setter Property="KeyboardNavigation.IsTabStop" Value="False" />
</Style>
</ListView.ItemContainerStyle>
哪个适用于标签,但它也会破坏相关列表视图的鼠标悬停风格。
我试图通过继承默认值来取回它:
<ListView.ItemContainerStyle BasedOn="{StaticResource {x:Type ItemContainerStyle}}">
<Style>
<Setter Property="KeyboardNavigation.IsTabStop" Value="False" />
</Style>
</ListView.ItemContainerStyle>
导致构建中断消息&#34;无法在属性元素上设置属性&#34;。
所以我尝试更改项目的mousover样式以匹配样式表中的内容:
<ListView.ItemContainerStyle>
<Style>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="#90C8E0" />
</Trigger>
</Style.Triggers>
<Setter Property="KeyboardNavigation.IsTabStop" Value="False" />
</Style>
</ListView.ItemContainerStyle>
并且不会编译,抱怨IsMouseOver和Background不是ItemContainter的可识别属性。
所以我尝试在样式表中为它创建一个样式,然后给它一个键:
<Style x:Key="TabbedListItem" BasedOn="{StaticResource {x:Type ListViewItem}}">
<Setter Property="KeyboardNavigation.IsTabStop" Value="False" />
</Style>
<ListView.ItemContainerStyle>
<Style BasedOn="{StaticResource TabbedListItem}" />
</ListView.ItemContainerStyle>
编译,但不会渲染,抛出错误&#34; &#39;为System.Windows.StaticResourceExtension&#39;提供价值。提出异常#34;。
我没有想法。我做错了什么?