TextBlock中的部分粗体文本

时间:2014-06-23 12:43:47

标签: c# wpf

我从DB获取单行文本。例如"您好我的名字是开发人员"。 我需要这个文本的部分将以粗体显示并将其放在TextBlock中。

对于我使用的代码:

overview_text.Text = overView;

其中overview_text TextBlock是TextBlock,而overView是db的字符串。

我可以按照自己的意愿改变数据库字符串,但我需要单个字符串,例如我需要的是:

"Hello my <bold> name </bold> is the Developer"

你能帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

有很多方法可以达到理想的效果。 RichTextBox方式最佳,并且可以追溯到Windows窗体控件,这样做更难实现。通常,在WPF中使用的最佳类是Run class

使用Run类的一些好处包括它的Text属性是可绑定的,我们可以在其上应用所有常用的文本操作属性,如示例所示下面:

<TextBlock FontSize="16" Padding="25">
    <Run Text="Here is some " />
    <Run Text="BOLD" FontWeight="Bold" />
    <Run Text=" and " />
    <Run Text="ITALIC" FontStyle="Italic" />
    <Run Text=" and " />
    <Run Text="COLOURED" Foreground="LightGreen" />
    <Run Text=" text in one TextBlock" />
</TextBlock>

enter image description here