我有 WPF 控件:
<UserControl x:Class="MyProject.LabelWithUnit"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="30" d:DesignWidth="150">
<Viewbox StretchDirection="Both" Stretch="Uniform">
<Grid Width="150">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Label x:Name="ValueLabel" Grid.Column="0" Content="1013.0" Margin="0" VerticalAlignment="Center" HorizontalAlignment="Center" FontWeight="Bold" FontSize="18"/>
<Label x:Name="UnitLabel" Grid.Column="1" Content="m/s" Margin="1" FontSize="10" />
</Grid>
</Viewbox>
</UserControl>
它现在的表现如何:
默认:
当宽度增加时:(这是我需要改变的)
当我增加高度时它如何缩放:(应该保持原样)
它应该如何表现:
(只有这个行为应该改变——“m/s”应该固定在右上角):
因此,“m/s”部分应始终位于右上角,而数字部分应位于中间附近。当我增加控件的 Height
时,它应该同时缩放 Label
。
编辑:添加了更多图片。
更改 ViewBox
控件上的拉伸(stretch):
<Viewbox StretchDirection="UpOnly" Stretch="Uniform">
我是一名优秀的程序员,十分优秀!