繁体   English   中英

Silverlight标签中的新行

[英]New line in Silverlight's label

我想知道字符串的长度是否大于label宽度,然后如何在新行中调整字符串? 应用于标签的字符串是动态的。

我尝试使用Viewbox但该选项无效。 有人有主意吗?

TextWrapping="Wrap"应用于TextBlock

好吧,这样的事情可能会起作用吗?

<Label Target="{Binding ElementName="desiredElement">
   <TextBlock TextWrapping="Wrap"  Text="{Binding YourString}"/>
</Label>

我发现Label并不是很有用,而且如果无法解决问题,那么我相信模仿它的缺失行为比用TextBlock用适当的绑定替换Label要容易得多。

将值换行设置为TextWrapping。 这是为文本块执行此操作的示例代码:

<TextBlock 
Name="textBlock"

Background="AntiqueWhite" 
Foreground="Navy" 

FontFamily="Century Gothic"
FontSize="12"
FontStretch="UltraExpanded"
FontStyle="Italic"
FontWeight="UltraBold"

LineHeight="Auto"
Padding="5,10,5,10"
TextAlignment="Center"
TextWrapping="Wrap"

Typography.NumeralStyle="OldStyle"
Typography.SlashedZero="True"
>
<Run Background="LightGreen">Text run 1.</Run>
<LineBreak/><Run Background="LightBlue">Text run 2.</Run>
<LineBreak/><Run Background="LightYellow">Text run 3.</Run>
</TextBlock>

我在WPF应用程序上进行了尝试,因此这也应与silverlight一起使用

XAML

<Label Content="{Binding labelname}">

属性

  private string _labelname;
   public string labelname
   {
       get
       {
           return _labelname;
       }
       set
       {
           _labelname = value;
           OnPropertyChanged("labelname");
       }
   }

将值分配给这样绑定的属性

labelname = "stack" + Environment.NewLine + "overflow";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM