我有一些标签,这些标签会在后面的代码中更新。问题在于,当我更新标签的内容时,标签不会调整大小(应调整大小以适合内容)。我尝试按照我发现的在线资源中的建议,在代码后边将Double.NaN的标签宽度设置为auto,但这似乎不起作用。 当我在代码中更新标签时,内容对于标签来说太长了,即使我在后面的代码中将宽度重新设置为自动
我的XAML标签的Width定义为Width =“ Auto”。
<Label x:Name="wp7" Content="wp7" Grid.Column="2" Width="Auto" FontSize="30" HorizontalAlignment="Left" Margin="83,386.03,0,0" Grid.Row="2" VerticalAlignment="Top" RenderTransformOrigin="1.065,-0.256"
>
与此相关的代码如下:
Label lb = (Label)FindName(bezetting.Key);
if (lb != null)
{
lb.Content = bezetting.Value;
lb.Width = Double.NaN;
}
为什么这行不通?是因为宽度是根据XAML中设置的原始值设置为自动的,并且在更新标签时未调整大小的?我该怎么做呢?
答案 0 :(得分:1)
删除设计者(?)已添加到您的RenderTransformOrigin
的{{1}}和Margin
属性:
Label
如果您希望<Label x:Name="wp7" Content="wp7" Grid.Column="2" FontSize="30" HorizontalAlignment="Left"
Grid.Row="2" VerticalAlignment="Top" />
的内容根据内容自行调整大小,则没有理由明确设置Width
的{{1}}属性。