DataGrid SilverLight 3控件中的奇怪行为

时间:2010-03-18 05:08:28

标签: silverlight-3.0

这是我的Xaml代码。在这里,我根据当前的年龄改变了细胞的前景。

<data:DataGridTemplateColumn Header="First Name" Width="150" MinWidth="150" CanUserReorder="False" SortMemberPath="FirstName">
                <data:DataGridTemplateColumn.CellTemplate>
                    <DataTemplate >
                        <TextBlock   Foreground ="{Binding Path=DateOfBirth,Mode=OneWay,Converter={StaticResource CellColor}}" Text="{Binding FirstName}" ToolTipService.ToolTip="{Binding FirstName}"  FontFamily="Arial" FontSize="11"  VerticalAlignment="Center" Margin="5,0,0,0" />
                    </DataTemplate>
                </data:DataGridTemplateColumn.CellTemplate>
            </data:DataGridTemplateColumn>
            <data:DataGridTextColumn Foreground ="{Binding Path=DateOfBirth,Mode=OneWay,Converter={StaticResource CellColor}}"  Header="Last Name" Width="150" MinWidth="150" Binding="{Binding LastName}" CanUserSort="True" IsReadOnly="True" CanUserReorder="False"/>

当我运行上面的代码时,它返回以下异常

AG_E_PARSER_BAD_PROPERTY_VALU

我的问题是,当我从DataGridTextColumn列中删除Foreground转换器时,它运行正常因为Foreground转换器应用于DataGridTemplateColumn列,而不会通过例外。但是,当我使用相同的转换器到DataGridTextColumn它抛出execption为什么,谁能知道为什么是 是行为

提前感谢。

对不起Josh Einstein这是转换器的返回值

        if (intAge > 25)
            return new SolidColorBrush(Colors.Red);
        else
            return new SolidColorBrush(Colors.White);

0 个答案:

没有答案