在UserControl中更改DataGrid行的颜色

时间:2016-05-06 16:37:13

标签: wpf datagrid user-controls

我在使用UserControl的项目中工作我需要更改行颜色,当我浏览网页寻找答案时我总是看到他们使用循环并使用DataGrid.Rows并且它在系统中不可用.Windows.Controls.DataGrid所以如何更改为System.Windows.Forms.DataGrid或更改行的背景颜色 当我添加一个数据网格(拖放)时,它总是需要System.Windows.Controls,当我使用DataGrid.row或DataGrid.Rows时,我收到此错误

  

' System.Windows.Controls.DataGrid'不包含'行'的定义没有延伸方法'行'接受类型' System.Windows.Controls.DataGrid'的第一个参数。可以找到(你错过了使用指令或程序集引用吗?)

1 个答案:

答案 0 :(得分:1)

您可以定义 RowStyle

的样式
<DataGrid.RowStyle>
    <Style TargetType="DataGridRow">
        <Setter Property="Background" Value="Black" />
        <Setter Property="Foreground" Value="White" />
        <Style.Triggers>
            <DataTrigger Binding="{Binding Converter={StaticResource converter}}" Value="true"> <!-- You can create a converter to define your condition -->
                <Setter Property="Background" Value="Red" />
                <Setter Property="Foreground" Value="White" />
            </DataTrigger>
        </Style.Triggers>
    </Style>
</DataGrid.RowStyle>