[英]Vertically rotated Textblock takes up entire width as if it were horizontal
我已經將TextBlock
控件包裝在邊框中,以便可以看到正在占用的空間:
這是XAML:
<Border BorderBrush="Cyan" BorderThickness="3">
<TextBlock Style="{StaticResource subtitle}" Text="{Binding Title}" >
<TextBlock.RenderTransform>
<RotateTransform Angle="90" />
</TextBlock.RenderTransform>
</TextBlock>
</Border>
問題在於,這占用了比我需要的空間更多的空間,如果我為其設置了靜態寬度,則會得到以下信息:
有什么建議么?
<Setter Property="LayoutTransform">
<Setter.Value>
<RotateTransform Angle="90" />
</Setter.Value>
</Setter>
之所以如此,是因為像在大多數Web Base應用程序中一樣,有一系列事件會觸發/觸發我們用來查看或處理的大部分事件,而這些事件發生在Rendering Event中。我不確定100%,但是我真的認為LayoutTransform在預渲染期間發生
在運行時創建文本塊並旋轉它們時,我遇到了同樣的問題。 我只是通過設置解決了
tb.Margin = .......
tb.HorizontalAlignment = Windows.UI.Xaml.HorizontalAlignment.Left;
tb.VerticalAlignment = Windows.UI.Xaml.VerticalAlignment.Top;
RotateTransform rt = new RotateTransform();
rt.Angle = -40;
tb.RenderTransform = rt;
似乎您沒有設置它們,變換是在居中文本上進行計算,並添加寬度以將其放置在所需位置...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.