2011-06-14 106 views
1

我想将datagrid中的FontWeight绑定到代码中的一个属性并获取一个xamlparseexception。这是代码databinding fontweight silverlight 4

<sdk:DataGridTextColumn       
         Header="Date" 
         CellStyle="{StaticResource ListColumnStyle}" 
         Binding="{Binding Date}" 
         FontWeight="{Binding StatusToFont}" 
         IsReadOnly="True"/> 

和属性定义为

public FontWeight StatusToFont 
     { 
      get 
      { 
       return FontWeights.SemiBold; 
      } 
     } 

有人看到任何问题吗?

感谢

回答

2

一个DataGridTextColumn不支持fontWeight设置绑定,原因it's不是一个DependencyProperty。

甲workaraound是使用DataGridTemplateColumn并指定一个文本框作为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> 
+0

谢谢。那就是诀窍。 – user642770 2011-06-14 12:50:49