问题描述
|
我正在尝试将datagrid中的FontWeight绑定到代码中的属性,并获取xamlparseexception。这是代码
<sdk:DataGridTextColumn
Header=\"Date\"
CellStyle=\"{StaticResource ListColumnStyle}\"
Binding=\"{Binding Date}\"
FontWeight=\"{Binding StatusToFont}\"
IsReadOnly=\"True\"/>
该属性定义为
public FontWeight StatusToFont
{
get
{
return FontWeights.SemiBold;
}
}
有人看到这个有什么问题吗?
谢谢
解决方法
DataGridTextColumn不支持FontWeight上的绑定,因为它不是DependencyProperty。
一种解决方法是使用DataGridTemplateColumn并将TextBox指定为DataTemplate。在TextBox上,您可以应用TextBox支持的任何绑定。
<sdk:DataGridTemplateColumn Header=\"Date\"
CellStyle=\"{StaticResource ListColumnStyle}\"
Binding=\"{Binding Date}\"
IsReadOnly=\"True\">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock FontWeight=\"{Binding StatusToFont}\"/>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>