gpt4 book ai didi

wpf - TextBlock 填充垂直空间

转载 作者:行者123 更新时间:2023-12-01 12:49:15 29 4
gpt4 key购买 nike

我想创建一个垂直(-90 变换角度)的 TextBlock (或其中包含文本的其他元素,仅用于显示),但我希望该元素填充垂直空间它包含在其中,但具有定义的水平量(我使用垂直和水平术语而不是高度和宽度,因为当我让 TextBlock 垂直时它会被交换),并将其与容器的左侧。

我相信我了解如何使用 RenderTransformLayoutTransform 使 TextBlock 垂直。但是,我似乎无法让“对接”正常工作,每当我更改容器的垂直方向时,TextBlock 都会在水平方向而不是垂直方向上增加。

这是我所拥有的:

<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
x:Class="AttendanceTracker.StudentView"
x:Name="UserControl" Height="172.666" Width="417.333">

<StackPanel x:Name="LayoutRoot" Orientation="Horizontal">
<Border BorderBrush="Black" BorderThickness="1" RenderTransformOrigin="0.5,0.5" Background="#52FFFFFF" Width="139.667">
<TextBlock Text="My Title" TextWrapping="Wrap" FontSize="18.667" TextAlignment="Center" Foreground="White" Margin="-58.509,68.068,49.158,70.734" Background="Black" RenderTransformOrigin="0.5,0.5" Width="147.017" d:LayoutOverrides="Height">
<TextBlock.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform/>
<RotateTransform Angle="-90"/>
<TranslateTransform/>
</TransformGroup>
</TextBlock.RenderTransform>
</TextBlock>
</Border>
</StackPanel>

更改 UserControl 的高度,您会注意到 TextBlock 的水平方向增加,而不是所需的垂直方向增加。

最佳答案

如果我理解正确,那么这应该为您指明正确的方向:

<StackPanel Orientation="Horizontal">
<TextBlock Background="Red" Text="My Title">
<TextBlock.LayoutTransform>
<TransformGroup>
<RotateTransform Angle="90"/>
</TransformGroup>
</TextBlock.LayoutTransform>
</TextBlock>
</StackPanel>

关键是使用LayoutTransform,而不是RenderTransform。这将确保在变换发生后发生另一个布局过程。否则,布局系统将使用原始边界矩形来布局 TextBlock

除此之外,我刚刚摆脱了所有 Blend 生成的残渣,看看发生了什么。结果如下:

alt text http://img187.imageshack.us/img187/1189/screenshottbv.png

关于wpf - TextBlock 填充垂直空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1337328/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com