WPF 設置DataGrid 選中的背景色和前景色


<DataGrid >

            <DataGrid.CellStyle>
                <Style TargetType="DataGridCell">
                    <Style.Triggers>

                        <Trigger Property="IsSelected" Value="True">
                            <Setter Property="Background" Value="Red"/>
                            <Setter Property="Foreground" Value="Yellow"/>
                        </Trigger>

                    </Style.Triggers>

                </Style>

            </DataGrid.CellStyle>

        </DataGrid>

  

代碼動態設置:

Style styleCells = new Style(typeof(System.Windows.Controls.DataGridCell));
            //styleCells.Setters.Add(new Setter
            //{
            //    Property = System.Windows.Documents.TextElement.ForegroundProperty,
            //    Value = new SolidColorBrush(System.Windows.Media.Colors.Black)
            //});

            Trigger triger = new  Trigger()
            {
                Property = DataGridCell.IsSelectedProperty,
                Value = true
            };
            triger.Setters.Add(new Setter()
            {
                Property = Control.BackgroundProperty,
                Value = new SolidColorBrush(System.Windows.Media.Colors.Red)
            });
            triger.Setters.Add(new Setter()
            {
                Property = Control.ForegroundProperty,
                Value = new SolidColorBrush(System.Windows.Media.Colors.White)  
            });

            styleCells.Triggers.Add(triger);


            this.dataGrid.CellStyle = styleCells;

  

代碼設置datagrid 列頭部(DataGridColumnHeader)的顏色:

Style chdStyle = new Style(typeof(System.Windows.Controls.Primitives.DataGridColumnHeader));
            chdStyle.Setters.Add(new Setter
            {
                Property = System.Windows.Documents.TextElement.ForegroundProperty,
                Value = new SolidColorBrush(System.Windows.Media.Colors.Black)
            });
            this.dataGrid.ColumnHeaderStyle = chdStyle;

  

或者修改ui:

     <DataGrid.ColumnHeaderStyle>
                <Style TargetType="DataGridColumnHeader">
                    <Style.Setters>
                        <Setter Property="Background" Value="Red"></Setter>
                        <Setter Property="Foreground"  Value="White"></Setter>
                    </Style.Setters>
                </Style>
              </DataGrid.ColumnHeaderStyle> 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM