C# 垂直旋转的文本块占据整个宽度,就像它是水平的一样
我将C# 垂直旋转的文本块占据整个宽度,就像它是水平的一样,c#,wpf,xaml,textblock,text-rotation,C#,Wpf,Xaml,Textblock,Text Rotation,我将TextBlock控件包装在边框中,以便查看占用空间的内容: 以下是XAML: <Border BorderBrush="Cyan" BorderThickness="3"> <TextBlock Style="{StaticResource subtitle}" Text="{Binding Title}" > <TextBlock.RenderTransform> <RotateTransform
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的应用程序一样,有一系列事件会触发/触发我们通常看到或处理的大部分事件都发生在渲染事件中。。到那时,页面已经被提供了,可以说,我不是100%确定,但我真的认为布局转换发生在预渲染期间
这是因为与大多数基于Web的应用程序一样,有一系列事件会触发/触发我们通常看到或处理的大部分事件都发生在渲染事件中。。到那时,页面已经被提供了,可以说,我不是100%确定,但我真的认为布局转换发生在预渲染期间。在运行时创建文本块并旋转它们时,我遇到了相同的问题。 我简单地通过设置
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;
如果您没有设置它们,转换将在居中文本上进行计算,并添加宽度以将其定位在您想要的位置…在运行时创建文本块并旋转它们时,我遇到了相同的问题。 我简单地通过设置
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;
好像你没有设置它们,转换在居中文本上进行计算,并增加宽度以将其定位在您想要的位置…是否有一个布局转换可以指定给Setter属性,并从中增加或减少边框…?是否有一个布局转换可以指定给Setter属性,并从中增加或减少边框减少边界…?啊哈!我必须使用LayoutTransform而不是RenderTransform。格拉齐!伙计,我很高兴我记性很好。。很高兴我能很快帮助你。。投票赞成。。LOL@SergioTapia
LayoutTransform
之所以有效,是因为它是在呈现文本块之前应用的<代码>渲染转换在文本块渲染并在UI中屏蔽其空间后应用。DJ,如果你想在你的答案中添加这样的解释,我会投票赞成:)我相信你的回答是正确的。。但我也在想,是否有一些预渲染事件也被触发,布局转换可能是预渲染的一部分…啊哈!我必须使用LayoutTransform而不是RenderTransform。格拉齐!伙计,我很高兴我记性很好。。很高兴我能很快帮助你。。投票赞成。。LOL@SergioTapiaLayoutTransform
之所以有效,是因为它是在呈现文本块之前应用的<代码>渲染转换在文本块渲染并在UI中屏蔽其空间后应用。DJ,如果你想在你的答案中添加这样的解释,我会投票赞成:)我相信你的回答是正确的。。但我也想知道是否有一些预渲染事件也被触发,布局转换可能是预渲染的一部分。。。