Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
来自转换器的c#wpf DataGridCell设置值_C#_Wpf_Datagrid_Wpf Controls_Wpfdatagrid - Fatal编程技术网

来自转换器的c#wpf DataGridCell设置值

来自转换器的c#wpf DataGridCell设置值,c#,wpf,datagrid,wpf-controls,wpfdatagrid,C#,Wpf,Datagrid,Wpf Controls,Wpfdatagrid,我有一个DataGridCell,它调用这个转换器。我希望这个单元格的值是“hi”(因为我正在将单元格“content”设置为“hi”),当它通过转换器显示在datagrid中时 我做错了什么 <DataGridTextColumn Width="60" Header="Google" CanUserResize="True" CanUserSort="True"> <DataGridTextColumn.HeaderStyle> <Styl

我有一个DataGridCell,它调用这个转换器。我希望这个单元格的值是“hi”(因为我正在将单元格“content”设置为“hi”),当它通过转换器显示在datagrid中时

我做错了什么

<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();
    }
}

公共类GooglePositionConverter:IValueConverter
{
公共对象转换(对象值、类型targetType、对象参数、System.Globalization.CultureInfo区域性)
{
ResultCheckObject RankCheck=作为ResultCheckObject的值;
返回“hi”;
}
公共对象转换回(对象值、类型targetType、对象参数、CultureInfo区域性)
{
抛出新的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">


您绑定到当前源路径=,但您的当前源是什么!?在converter中,您将值强制转换为ResultCheckObject,但只返回'Hi',如果不使用该值,为什么还要强制转换该值?如何通过转换器设置datagrid单元格的内容/文本?例如,您可以有一些要绑定数据上下文的属性int,然后该属性值将通过转换器返回,并立即将其反配置出来,需要在DataGridTextColumn中设置它,而不是使用