缩放到Canvas而不修改特定子控件的大小

Ed *_* S. 5 wpf zooming

所以我意识到我在这里冒险使用Canvas,并且很可能需要提出一个更加手动的解决方案.但是,在WPF中没有过多的经验,我希望可能有一些解决方案可以让我继续使用Canvas控件及其免费提供的功能.

问题围绕着Canvas,它用于放大和缩小图像以及属于Canvas的一些子控件.这些子控件应放置在图像上的不同位置,因此,Canvas工作得很好,因为它在我放大或缩小时处理我的所有布局/定位.

但是,一个缺点是Canvas在放大图像时缩放这些子控件,导致它们变得太大而无法在实践中使用.我正在寻找的是一种解决方案,它允许我放大到属于画布的图像,而不会缩小子控件的大小,最好是为我处理布局.

我已经尝试修改这些子控件的宽度和高度,因为缩放系数增加或减少,但有一个轻微的滞后时间,它看起来有点"生涩".

如果它归结为它我将简单地完成所有的缩放/平移/布局,但我想我会首先要确保我没有遗漏任何可以让我告诉Canvas不缩放尺寸的东西某些控件.提前致谢.

H.B*_*.B. 2

您可以将子级的 RenderTransform 绑定到 Canvas 变换的逆变换,请参阅我对关于旋转的类似问题的回答。