[英]How to set the FontStyle of a TextBlock via Binding (MVVM)
我截断的XAML代码:
<TextBlock Text="{Binding Name}" Foreground="{Binding FontColor}" FontStyle="{Binding FontStyleTreeItem}"/>
摘录的代码类TreeItem:
public System.Windows.FontStyles FontStyleTreeItem {get;set}
我想分配属性“ FontStyleTreeItem”,例如:
treeItem.FontStyleTreeItem = System.Windows.FontStyles.Italic;
但这是行不通的,因为“ System.Windows.FontStyles”是静态的。 但是我不知道如何提供一个好的解决方案来设置上述属性。
我还尝试将属性设置为FontStyle,因此末尾没有s (FontStyle s ),但是文本块的fontstyle不变。
public FontStyle FontStyleTreeItem { get { return FontStyle.Italic; } }
有人可以看到我所缺少的吗?
已经谢谢你了。
该属性的类型应为System.Windows.FontStyle
。 它可能仍会返回静态值,例如FontStyles.Italic
:
public System.Windows.FontStyle FontStyleTreeItem { get { return System.Windows.FontStyles.Italic; } }
如果您像这样定义属性:
public System.Windows.FontStyle FontStyleTreeItem { get; set; }
...您可以将其设置为任何FontStyle
值,例如:
FontStyleTreeItem = FontStyles.Italic;
如果在运行时动态设置它,则需要实现INotifyPropertyChanged接口以更改字体样式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.