我在WPF中有一个usercontrol,里面有2个按钮。 按钮处于叠加状态,您一次只能看到一个按钮。 我想在按钮之间使用淡入淡出过渡。
我可以使用此布局在代码隐藏中使用不透明度动画实现此目的:
<UserControl>
<Grid>
<Button x:Name="buttonA">A</Button>
<Button x:Name="buttonB">B</Button>
</Grid>
</UserControl>
但我想要一个更好的解决方案,最好是在XAML中。 像这样:
<UserControl>
<TransitionContent CurrentContent="{Binding CurrentItemKey}" Transition="Fade">
<TransitionContentItem Key="ItemA">
<Button x:Name="buttonA">A</Button>
</TransitionContentItem>
<TransitionContentItem Key="ItemB">
<Button x:Name="buttonB">B</Button>
</TransitionContentItem>
</TransitionContent>
</UserControl>
我可以使用LayoutToolkit:TransitioningContentControl来完成此任务吗?
还有哪些其他选择?
感谢
答案 0 :(得分:3)
我不确定你是否会接受这个作为答案但是这里是:
从按钮转换到按钮可能意味着你应该有一个(至少)两个状态的按钮。
如果您使用VisualStateManager来定义状态并管理它们,您将获得转换。
编辑以回复您的评论:
您可以对tabcontrol进行子类化和样式化。只要另一个标签页激活,您就可以设置其不透明度的动画。这样你就可以创建一个通用的转换容器。