c# wpf DataGridCell 从转换器设置值



我有这个DataGridCell,它调用这个转换器。我希望这个单元格的值是"hi"(因为我将单元格"content"设置为"hi"(在通过转换器后显示在数据网格中时。

我在这里做错了什么?

<DataGridTextColumn Width="60" Header="Google" CanUserResize="True" CanUserSort="True">
    <DataGridTextColumn.HeaderStyle>
        <Style TargetType="{x:Type DataGridColumnHeader}">
            <Setter Property="ToolTip" Value="Current Position on Google" />
            <Setter Property="HorizontalContentAlignment" Value="Center"/>
        </Style>
    </DataGridTextColumn.HeaderStyle>
    <DataGridTextColumn.CellStyle>
        <Style TargetType="{x:Type DataGridCell}">
            <Setter Property="HorizontalAlignment" Value="Center"/>
            <Setter Property="FontSize" Value="12"/>
            <Setter Property="VerticalAlignment" Value="Center"/>
            <EventSetter Event="MouseUp" Handler="IdUnselect"/>
            <Setter Property="Background"   Value="{Binding GoogleKeywordPositionMovementSinceLastWeekCheck, Converter={StaticResource NameToBrushConverter}}"/>
            <Setter Property="Content"      Value="{Binding Path=., Converter={StaticResource GooglePositionConvertor}}"/>
        </Style>
    </DataGridTextColumn.CellStyle>
</DataGridTextColumn>

public class GooglePositionConvertor : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        ResultCheckObject RankCheck = value as ResultCheckObject;
        return "hi";
    }
    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
        throw new NotImplementedException();
    }
}

通过转换器以以下方式设置内容不起作用。

<Setter Property="Content" Value="{Binding Path=., Converter={StaticResource GooglePositionConvertor}}"/>

通过转换器设置它,如下所示

<DataGridTextColumn Width="60" Header="Google" Binding="{Binding Path=., Converter={StaticResource GooglePositionConvertor}}" CanUserResize="True" CanUserSort="True">

最新更新