WPF动画-将画布放在前面
我在透明的WPF动画-将画布放在前面,wpf,animation,canvas,wpf-controls,z-order,Wpf,Animation,Canvas,Wpf Controls,Z Order,我在透明的画布上设置了一个动画。我将Canvas设置为按钮的内容,然后运行动画。(有关代码,请参见此。) 问题是,有时动画会被放在我的应用程序的其他UI元素后面(我使用的是Avalon Dock,它位于DockableContent的前面,但在它旁边的后面)。在一些测试中,这似乎与按钮的大小有某种联系(如果它溢出DockableContent) 你知道我怎样才能把画布放在最上面吗?(注意:我并不是试图将画布中的元素置于画布中的其他元素之上) 谢谢你的帮助 编辑: 之所以发生这种情况,是因为我有
画布上设置了一个动画。我将Canvas
设置为按钮的内容,然后运行动画。(有关代码,请参见此。)
问题是,有时动画会被放在我的应用程序的其他UI元素后面(我使用的是Avalon Dock,它位于DockableContent
的前面,但在它旁边的后面)。在一些测试中,这似乎与按钮的大小有某种联系(如果它溢出DockableContent
)
你知道我怎样才能把画布
放在最上面吗?(注意:我并不是试图将画布中的元素置于画布中的其他元素之上
)
谢谢你的帮助
编辑:
之所以发生这种情况,是因为我有一个ScrollViewer
,它围绕着保存动画Canvas
的按钮。这导致它扩展而不是覆盖
我可以想出一些解决办法,但我愿意接受建议。更改附加属性的值。值越大,表示离前景越近我在画布对象上找不到Panel.ZIndex。(即myCanvas.Panel.ZIndex不是有效的引用)它是一个附加属性,不能这样引用它。您必须这样称呼它:Panel.SetZIndex(myCanvas,10)
。在XAML中,您可以使用Panel.ZIndex