如何在具有绑定的 WPF 文本块中允许 HTML 标记
本文关键字:标记 HTML 文本 WPF 绑定 | 更新日期: 2023-09-27 18:35:24
我在xaml中定义了一个带有绑定的文本块:
<TextBlock Text="{Binding ElementName=MyClass, Path=MyStringProperty}"/>
例如,当我将MyStringProperty
设置为 ,<b>Hello, World!</b>
时,它显示为纯文本。有没有办法告诉控件使Hello, World!
字符串加粗?
你不能
用这样的TextBlock
做到这一点。
您需要将文本块的 FontWeight
属性绑定到保存粗体/非粗体值的变量。
如果值是布尔值,则需要编写一个转换器以将布尔值映射到字体权重属性。
如果要根据用户键入的内容在运行时更改文本的粗体(或任何其他属性),则需要使用RichTextBox
进行查看。
使用 Inlines
属性:
<TextBlock Text="{Binding ElementName=MyClass, Path=MyStringProperty}">
<Run FontWeight="Bold" Text="{Binding BoldText}" />
</TextBlock>