假设有 2 张图片,一张大的用于背景,一张较小的用于前景。前景恰好位于背景的中间,覆盖了它的相对数量(例如 50%),因此用户将它们视为单个图像。
问题是我需要背景来填充Window
各种尺寸。将其Stretch
值设置为UniformToFill
将做到这一点。但是我怎样才能让前景仍然覆盖 50% 的背景呢?
使用矢量图像会更好,因为它可以在调整容器大小时“自行”缩放。
然后根据窗口大小设置边距,如下所示:
<Window x:Class="MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Height="400" Width="400">
<Grid>
<Image Margin="100">
<Image.Source>
<DrawingImage>
<DrawingImage.Drawing>
<GeometryDrawing Brush="#FF000000" Geometry="M14.800615,5.6499605L14.800615,14.800346C10.630442,17.910477 7.8903284,22.840685 7.8903284,28.44092 7.9003286,37.871319 15.530646,45.511639 24.961039,45.521641 34.391431,45.511639 42.011749,37.871319 42.04175,28.44092 42.03175,22.840685 39.291636,17.910477 35.121462,14.800346L35.121462,5.6599612C43.841825,9.5601254,49.912077,18.280493,49.912077,28.44092L49.922077,28.44092C49.912077,42.231503 38.741611,53.391972 24.961039,53.391972 11.170465,53.391972 0,42.231503 0,28.44092 0,18.270493 6.0902529,9.5501251 14.800615,5.6499605z M19.570043,0L30.237043,0 30.237043,33.917 19.570043,33.917z" />
</DrawingImage.Drawing>
</DrawingImage>
</Image.Source>
</Image>
</Grid>
要始终使用 50% 的窗口,您可以使用Converter来绑定属性。
另外,也许这可以帮助你。