.net - 对 TextBlock 和 Run 元素使用相同的样式

标签 .net wpf styles

我有一个 WPF 样式,为 TargetType: TexBlock 设置 TextDecorations 依赖属性。我需要对某些 ​​TextBlock 中的某些 Run 元素使用相同的样式,而 TextBlock 本身并不使用上述样式。如何在不使用不同的 TargetType 重复相同样式的情况下实现此目的?

最佳答案

只需不指定 TargetType 但限定属性,例如:

<Style x:Key="CommonStyle">
    <Setter Property="Inline.TextDecorations" Value="StrikeThrough" />
</Style>
<TextBlock Style="{StaticResource CommonStyle}" Text="Lorem Ipsum" />
<TextBlock>
    <Run Style="{StaticResource CommonStyle}" Text="Lorem" />
    <Run Text="Ipsum" />
</TextBlock>

如果你想进一步发展这种风格,你可以使用BasedOn ,这还允许通过不在派生样式上设置键来隐式应用所述样式。

关于.net - 对 TextBlock 和 Run 元素使用相同的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7835951/

相关文章:

c# - 在抽象类的构造函数中通过虚拟成员分配只读字段

.net - 在Visual Studio中更改目标框架

css - Clarity Design Datagrid如何改变列宽

Python自生成变量?

.net - 是否可以查看在 dll 文件中创建的所有方法和类?

c# - 实时更新 .NET 桌面应用程序

c# - 应用程序错误 System.InvalidOperationException : An unspecified error occurred on the render thread

c# - 为 ListViewItem 执行命令的附加行为

WPF 文本框并双击

android - Xamarin 颜色导致构建错误