跳到主要内容
版本:11.0.0

Viewbox 视图盒

Viewbox 是一个可以缩放其内容的容器控件。可以定义内容的拉伸方式,以及拉伸发生的方向(拉伸方向)。

常用属性

你可能最常使用这些属性:

属性默认值描述
StretchUniform决定内容如何适应可用空间。
StretchDirectionBoth决定缩放何时发生。

Stretch 属性的值如下:

Stretch描述
Uniform(默认) 内容被调整大小以适应容器的尺寸,同时保持其原生的宽高比。
Fill内容被调整大小以填充容器的尺寸。宽高比不被保持。
UniformToFill内容被调整大小以完全填充容器,同时保持其原生的宽高比。然而,如果内容的宽高比与分配空间的宽高比不匹配,则内容的一部分可能会被隐藏。

StretchDirection 属性的值如下:

Stretch Direction描述
UpOnly仅当内容小于可用空间时才缩放内容。如果内容较大,则不进行缩小。
DownOnly仅当内容大于可用空间时才缩放内容。如果内容较小,则不进行放大。
Both(默认) 始终根据拉伸模式适应可用空间。

示例

这个简单的示例展示了一个 Viewbox 以统一的方式放大一个圆(拉伸和方向均为默认值)。

<Viewbox Stretch="Uniform" Width="300" Height="300">
<Ellipse Width="50" Height="50" Fill="CornflowerBlue" />
</Viewbox>

演示

以下演示展示了不同的拉伸和拉伸方向属性设置的组合效果。第一组展示了拉伸属性的效果:

Stretch 值演示
Uniform
UniformToFill
Fill
None

第二组演示展示了拉伸方向属性的效果:

Stretch Direction演示
UpOnly
DownOnly

更多信息

信息

有关此控件的完整 API 文档,请参见 这里

信息

GitHub 上查看源代码 Viewbox.cs