使用AutoGenerateColumns在DataGrid中使用Converter for Cells

时间:2017-08-23 17:27:32

标签: .net wpf xaml datagrid code-behind

有没有办法将转换器附加到GridView中的每个单元格,以允许根据文本内容更改颜色?

带有颜色的Datagrid示例。它应该是什么样子。

Datagrid sample with color

XAML

  [![<DataGrid x:Name="dgvData" AutoGenerateColumns="True"  />][1]][1]

背后的代码

    Dim tableView As DataView = New DataView(DataTable)
    Me.dgvData.ItemsSource = tableView

到目前为止,我所做的是使用样式并附加转换器。 但在风格上,我无法访问数据。在数据中,如果它是自动生成的,我没有包含单元格背景颜色。

1 个答案:

答案 0 :(得分:0)

您可以通过绑定到Content.Text属性来完成此操作。

样品转换器:

tf.stack([(tf.cos(angle), -tf.sin(angle)), (tf.sin(angle), tf.cos(angle))], axis=0)

示例XAML:

public class MyConverter : IValueConverter
{
     public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        var x = value;
        return x.ToString() == "1" ? Brushes.Red : Brushes.Green;
    }

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
        throw new NotImplementedException();
    }
}