我希望在两个面板之间移动内容时设置转换动画。我得到一个细节记录的地图图像,并将其作为缩略图对接在下面的面板中。停靠区域位于页脚网格中,内容详细信息位于停靠区域上方的另一个网格中(停靠点和主内容区域位于根布局控件的单独行中 - 另一个网格)。
我尝试使用ScaleTransform和TranslateTransform实现此功能,同时缩小图像并将其移向页脚控件。当它移动到页脚控件时,即使图像Canvas.ZIndex属性设置为非常高的数字,它也会被剪裁。最终,thumnbail将需要成为位于页脚网格内的StackPanel的子项。
感谢您的考虑和帮助。
答案 0 :(得分:2)
我有一个类似的问题(剪辑)我有一个WPF动画。问题是动画的所有者需要成为两个容器的父级才能使动画工作(在我的例子中,我将它作为容纳容器的实际窗口)。
没有任何代码,我无法看出这是不是你的问题,但我想我会把它扔出去。
您可以在此处查看我的代码,其中我将动画从一个容器移动到另一个容器: http://wiassistant.codeplex.com/sourcecontrol/changeset/view/36638?projectName=WIAssistant#924851 (请参阅文件底部的AnimatePaneBox方法。)这可能对您有用,也可能没用。
答案 1 :(得分:1)
我通过创建一个位于两个容器顶部的Canvas来做类似的事情,使用WritableBitmap(如果需要)创建一个正在移动的对象的渲染并将其附加到该Canvas,使其动画化位图(平移,缩放,不透明等),然后在动画结束时弹出新对象。如果您的控件需要能够移动或调整大小,它可能会很脆弱,但在我的大多数情况下,它都是可靠的黑客。