Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

what is Behind Code for "{StaticResource {dxgt:GridRowThemeKey ResourceKey=RowStyle}}"

This is my XAML Code

<Window x:Class="Q316995.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
        xmlns:dxgt="http://schemas.devexpress.com/winfx/2008/xaml/grid/themekeys"
        xmlns:local="clr-namespace:Q316995"
        Title="MainWindow" Height="350" Width="525">
<Window.Resources>
    <ResourceDictionary>
        <Style x:Key="LastRowHighlighted"
                BasedOn="{StaticResource {dxgt:GridRowThemeKey ResourceKey=RowStyle}}"
                TargetType="{x:Type dxg:GridRowContent}">
        </Style>
    </ResourceDictionary>
</Window.Resources>
</Window>

its similar behind c# code is

Binding _Binding = new Binding();
_Binding.Converter = new LastRowHighlighter();

Setter _Setter = new Setter();
_Setter.Property = GridRowContent.FontWeightProperty;
_Setter.Value = _Binding;

Style _Style = new System.Windows.Style();
//_Style.BasedOn = new Style(typeof(GridRowContent));
_Style.TargetType = typeof(GridRowContent);
_Style.Setters.Add(_Setter);

grid.Resources.Add("LastRowHighlighted", _Style);

i do not know how can i replace

BasedOn="{StaticResource {dxgt:GridRowThemeKey ResourceKey=RowStyle}}"

with c# code. Grid is Devexpress's GridControl

like image 552
Kiran Ahir Avatar asked Nov 12 '22 23:11

Kiran Ahir


1 Answers

The Style class has a constructor that accepts a Style object to base the new Style on. You can also set the Style.BasedOn property as you have found.

You can access a default Style set from your application Resources section using the following:

Application.Current.TryFindResource(typeof(GridRowContent));

So please try the following:

Style style = new Style(typeof(GridRowContent), Application.Current.TryFindResource(
typeof(GridRowContent)));
like image 53
Sheridan Avatar answered Nov 15 '22 13:11

Sheridan