• 1399/02/21

تغییر رنگ شرطی سلول دیتا گرید :

با سلام 

میخوام اگه مقدار موجودی از مقدار نقطه سفارش  کمتر یا مساوی بود رنگ متن موجودی عوض بشه قرمز بشه

                    <DataGridTextColumn x:Name="MojodiColumn" Header="موجودی" Binding="{Binding Mojodi,StringFormat={}{0:#,#.##}}">
                        <DataGridTextColumn.ElementStyle>
                            <Style TargetType="{x:Type TextBlock}">
                                <Setter Property="FontFamily" Value="/VahdatSystem;component/Font/#Cambria"/>
                                <Setter Property="HorizontalAlignment" Value="Center"/>
                                <Setter Property="TextBlock.TextWrapping" Value="Wrap" />
                                <Setter Property="TextBlock.FontWeight" Value="Bold"/>

                                <Style.Triggers>
                                    <DataTrigger  Binding="{Binding Mojodi}" Value="">
                                        <Setter Property="Background" Value="Red"></Setter>
                                    </DataTrigger>

                                </Style.Triggers>


                            </Style>
                        </DataGridTextColumn.ElementStyle>
                    </DataGridTextColumn>
                    <DataGridTextColumn x:Name="GhateNSefareshColumn" Header="نقطه سفارش" Binding="{Binding GhateNSefaresh,StringFormat={}{0:#,#.##}}">
                        <DataGridTextColumn.ElementStyle>
                            <Style TargetType="{x:Type TextBlock}">
                                <Setter Property="FontFamily" Value="/VahdatSystem;component/Font/#Cambria"/>
                                <Setter Property="HorizontalAlignment" Value="Center"/>
                                <Setter Property="TextBlock.TextWrapping" Value="Wrap" />
                            </Style>
                        </DataGridTextColumn.ElementStyle>
                    </DataGridTextColumn>

 

ننتونستم شرط رو بزارم

  • 1399/06/29
  • ساعت 13:26

با سلام، من در یک پروژه به نیاز به انجام همین کار داشتم. ابتدا یک Convertor با توجه به نیاز خودم درست کردم و بعد رنگ زمینه ی ردیف های DataGrid رو به اون بایند کردم.

<DataGrid.RowStyle>
                <Style TargetType="DataGridRow">
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding Inspector,Converter={StaticResource NullConvertor}}" Value="0">
                            <Setter Property="Foreground" Value="Blue"></Setter>
                        </DataTrigger>
                        <DataTrigger Binding="{Binding Manager,Converter={StaticResource NullConvertor}}" Value="0">
                            <Setter Property="Foreground" Value="Red"></Setter>
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
            </DataGrid.RowStyle>