![](/img/trans.png)
[英]how to append a new line / break to a multiline text box with SendMessage?
[英][WPF]How to set multiline text in setter of style
我需要创建许多具有相同文本的 TextBlock。
我可以像这样在 TextBlock 中设置多行文本:
<TextBlock>
<Run Foreground="Red">the first line</Run><LineBreak />
the second line
</TextBlock>
我想为那些 TextBlock 创建一个样式,所以我试试这个:
<Style TargetType="TextBlock" x:Key="text1">
<Setter Property="Text">
<Setter.Value>
<Run Foreground="Red">the first line</Run>
<LineBreak />
the second line
</Setter.Value>
</Setter>
</Style>
但这行不通。
我想也许我应该在<Setter.Value>
中添加一些东西,我尝试了一些东西但也没有任何效果。
抱歉英语不好,感谢您的任何想法。
我的朋友使用其他关键词找到这个答案: Multiple Run elements in WPF Style setter
这意味着我不能使用样式集多个 Run 元素,所以我找到了其他方法来解决这个问题:
1.使用命名空间xmlns:sys="clr-namespace:System;assembly=mscorlib"
2.添加资源
<Window.Resources>
<sys:String x:Key="myString1">Line1 text</sys:String>
<sys:String x:Key="myString2">Line2 text</sys:String>
</Window.Resources>
3.使用资源
<TextBlock>
<Run Foreground="Red" Text="{StaticResource myString1}"/>
<LineBreak />
<Run Text="{StaticResource myString2}"/>
</TextBlock>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.