我遇到了下面的问题。它不工作,我不知道我可能做错了什么。
<Polygon Name="Polygon1" Points="0,0 40,0 20,20" Opacity="0" HorizontalAlignment="Center"
VerticalAlignment="Bottom" Margin="0,0,0,-10" Fill="#FF547E80">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStateGroup">
<VisualState x:Name="MouseOverState">
<Storyboard>
<DoubleAnimation Storyboard.TargetName="Polygon1"
Storyboard.TargetProperty="Opacity"
To="1"
Duration="00:00:00" />
</Storyboard>
</VisualState>
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Focused" />
<VisualState x:Name="Unfocused" />
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</Polygon>发布于 2014-12-30 08:46:05
视觉状态只能应用于从Control派生的对象。支持可视化状态的框架控件是更重、更复杂的元素,如Button。多边形是从较低级别的FrameworkElement派生的。
Polygon确实支持鼠标事件MouseEnter和MouseLeave,因此您可能只想将其子类化并添加适当的事件处理程序。或者你可以在你自己的控件中包装一个多边形,然后触发你自己改变的任何视觉状态。
https://stackoverflow.com/questions/27663632
复制相似问题