【发布时间】:2009-09-10 09:12:02
【问题描述】:
我在 Silverlight 中的画布上使用 ScaleTransform 时遇到问题,画布可以正确缩放,但高度和宽度值始终保持不变。
例如一个 100x100 的画布缩放,所以它看起来 200x200 仍然是 100x100 的高度和宽度值,如何更新这些以反映新的大小。
另一个相关的问题是如何改变元素的高度和宽度,并适当地缩放 Canvas 或 XAML 元素,即。将 100x100 元素设置为 200x200 会使其中的所有内容都变大两倍 - 这应该是一个解决方案,其中仅设置元素的高度和宽度以改变比例。
这些问题与同一个问题有关 - 希望有一个适用于 Silverlight 3.0 的解决方案
需要更新高度和宽度,以便当此 Canvas 位于 ScrollViewer 中时,滚动条会正确更新为新尺寸 - 如果手动将高度和宽度分配给新的缩放尺寸,则会发生这种情况,但这需要适用于所有尺寸。
相反,我需要另一个画布,当它的高度和宽度发生变化时,里面的元素会适当地缩放,因为这将是一个可调整大小的图标,可以在同一个或另一个画布上使用。
如果这在 Silverlight 中无法直接实现,那么是否可以在代码中实现此效果,如果不是在 XAML 中,因为如果使用 ImageBrush,这在 WPF 中是可能的,但是 Silverlight 不支持这一点并且需要可扩展的画布,和一个画布,当缩放时会更新它自己的高度和宽度。
【问题讨论】:
标签: silverlight xaml layout transform scale