我已经复制了SplitButton的样式,但它缺少任何名为“Disabled”或“CheckedDisabled”的VisualState。我手动添加了这些内容,但似乎在我的应用中没有任何效果。当我尝试添加名为“PrimaryDisabled”的VisualState时,我收到异常(Microsoft.UI.Xaml.Markup.XamlParseException)--我在禁用/选中禁用可视状态下没有得到。下面是我为“禁用”实现的VisualState示例
<VisualState x:Name="Disabled">
<VisualState.Setters>
<Setter Target="PrimaryBackgroundGrid.BorderThickness" Value="0"/>
<Setter Target="SecondaryBackgroundGrid.BorderThickness" Value="0"/>
<Setter Target="PrimaryBackgroundGrid.Background" Value="{StaticResource ResourceKey=AdbsButtonDisabledColor}" />
<Setter Target="SecondaryBackgroundGrid.Background" Value="{StaticResource ResourceKey=AdbsButtonDisabledColor}" />
</VisualState.Setters>
</VisualState>
相同的VisualState与我的ToggleButton自定义样式一起按预期工作。两者各自的IsEnabled属性具有相同的绑定。两者同时被禁用(两者都不可单击),只有ToggleSplitButton显示的颜色不同,尽管其样式中具有相同的VisualState属性。
Windows用户界面3.0(微软 windows 应用软件开发工具包1.1.3)
我将感谢任何人对这个问题的建议/解决方案。
1条答案
按热度按时间bnlyeluc1#
ToggleSplitButton使用SplitButtonStyle,而且它确实具有Disabled的视觉状态。请从此链接复制样式并进行变更。
SplitButtonStyle