RadGridView Style

7 posts, 1 answers
  1. Ghasem
    Ghasem avatar
    15 posts
    Member since:
    May 2014

    Posted 23 Jul 2014 Link to this post

    Hi

    I’m using RadGridView in my application. I have set style of Template Property of GridView with Blend.

    The problem is that GroupPanel and GroupFooter are shown even after I have set:

    radGridView1.ShowGroupFooters = false;

    radGridView1.ShowGroupPanel= false;

     
    Is there anything wrong with my
    style?

    The following is my style:

        <Style x:Key="CustomGridViewStyle" TargetType="{x:Type telerik:RadGridView}" BasedOn="{StaticResource ResourceKey=RadGridViewStyle}">

            <Setter Property="Template">

                <Setter.Value>

                    <ControlTemplate TargetType="telerik:RadGridView">

                        <Grid>

                            <Grid.RowDefinitions>

                                <RowDefinition/>

                                <RowDefinition Height="auto"/>

                            </Grid.RowDefinitions>

                            <Grid Grid.Row="0">

                                <VisualStateManager.VisualStateGroups>

                                    <VisualStateGroup x:Name="GridViewActivity">

                                        <VisualState x:Name="Idle">

                                            <Storyboard>

                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PART_GridViewLoadingIndicator" Storyboard.TargetProperty="Visibility">

                                                   
    <DiscreteObjectKeyFrame KeyTime="0">

                                                       
    <DiscreteObjectKeyFrame.Value>

                                                           
    <Visibility>Collapsed</Visibility>

                                                       
    </DiscreteObjectKeyFrame.Value>

                                                   
    </DiscreteObjectKeyFrame>

                                                </ObjectAnimationUsingKeyFrames>

                                            </Storyboard>

                                        </VisualState>

                                        <VisualState x:Name="Busy">

                                            <Storyboard>

                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PART_GridViewLoadingIndicator" Storyboard.TargetProperty="Visibility">

                                                   
    <DiscreteObjectKeyFrame KeyTime="0">

                                                        <DiscreteObjectKeyFrame.Value>

                                                           
    <Visibility>Visible</Visibility>

                                                       
    </DiscreteObjectKeyFrame.Value>

                                                    </DiscreteObjectKeyFrame>

                                                </ObjectAnimationUsingKeyFrames>

                                            </Storyboard>

                                        </VisualState>

                                    </VisualStateGroup>

                                    <VisualStateGroup x:Name="ColumnHeadersVisibility">

                                        <VisualState x:Name="ColumnHeadersVisible">

                                            <Storyboard>

                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PART_HeaderRow" Storyboard.TargetProperty="Visibility">

                                                   
    <DiscreteObjectKeyFrame KeyTime="0">

                                                        <DiscreteObjectKeyFrame.Value>

                                                           
    <Visibility>Visible</Visibility>

                                                       
    </DiscreteObjectKeyFrame.Value>

                                                    </DiscreteObjectKeyFrame>

                                                </ObjectAnimationUsingKeyFrames>

                                            </Storyboard>

                                        </VisualState>

                                        <VisualState x:Name="ColumnHeadersCollapsed">

                                            <Storyboard>

                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PART_HeaderRow" Storyboard.TargetProperty="Visibility">

                                                   
    <DiscreteObjectKeyFrame KeyTime="0">

                                                       
    <DiscreteObjectKeyFrame.Value>

                                                   
            <Visibility>Collapsed</Visibility>

                                                       
    </DiscreteObjectKeyFrame.Value>

                                                   
    </DiscreteObjectKeyFrame>

                                                </ObjectAnimationUsingKeyFrames>

                                            </Storyboard>

                                        </VisualState>

                                    </VisualStateGroup>

                                    <VisualStateGroup x:Name="ColumnFootersVisibility">

                                        <VisualState x:Name="ColumnFootersVisible">

                                            <Storyboard>

                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PART_FooterRow" Storyboard.TargetProperty="Visibility">

                                                   
    <DiscreteObjectKeyFrame KeyTime="0">

                                                       
    <DiscreteObjectKeyFrame.Value>

                                                   
            <Visibility>Visible</Visibility>

                                                       
    </DiscreteObjectKeyFrame.Value>

                                                   
    </DiscreteObjectKeyFrame>

                                                </ObjectAnimationUsingKeyFrames>

                                            </Storyboard>

                                        </VisualState>

                                        <VisualState x:Name="ColumnFootersCollapsed">

                                            <Storyboard>

                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PART_FooterRow" Storyboard.TargetProperty="Visibility">

                                                   
    <DiscreteObjectKeyFrame KeyTime="0">

                                                        <DiscreteObjectKeyFrame.Value>

                                                           
    <Visibility>Collapsed</Visibility>

                                                       
    </DiscreteObjectKeyFrame.Value>

                                                   
    </DiscreteObjectKeyFrame>

                                                </ObjectAnimationUsingKeyFrames>

                                            </Storyboard>

                                        </VisualState>

                                    </VisualStateGroup>

                                    <VisualStateGroup x:Name="GroupPanelVisibility">

                                        <VisualState x:Name="GroupPanelVisible">

                                            <Storyboard>

                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PART_GroupPanel" Storyboard.TargetProperty="Visibility">

                                                   
    <DiscreteObjectKeyFrame KeyTime="0">

                                                        <DiscreteObjectKeyFrame.Value>

                                                           
    <Visibility>Visible</Visibility>

                                                       
    </DiscreteObjectKeyFrame.Value>

                                                   
    </DiscreteObjectKeyFrame>

                                                </ObjectAnimationUsingKeyFrames>

                                            </Storyboard>

                                        </VisualState>

                                        <VisualState x:Name="GroupPanelCollapsed">

                                            <Storyboard>

                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PART_GroupPanel" Storyboard.TargetProperty="Visibility">

                                                   
    <DiscreteObjectKeyFrame KeyTime="0">

                                                       
    <DiscreteObjectKeyFrame.Value>

                                                           
    <Visibility>Collapsed</Visibility>

                                                       
    </DiscreteObjectKeyFrame.Value>

                                                   
    </DiscreteObjectKeyFrame>

                                                </ObjectAnimationUsingKeyFrames>

                                            </Storyboard>

                                        </VisualState>

                                    </VisualStateGroup>

                                    <VisualStateGroup x:Name="InsertRowVisibility">

                                        <VisualState x:Name="InsertRowVisible">

                                            <Storyboard>

                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PART_AddNewRow" Storyboard.TargetProperty="Visibility">

                                                   
    <DiscreteObjectKeyFrame KeyTime="0">

                                                       
    <DiscreteObjectKeyFrame.Value>

                                                    
           <Visibility>Visible</Visibility>

                                                       
    </DiscreteObjectKeyFrame.Value>

                                                   
    </DiscreteObjectKeyFrame>

                                                </ObjectAnimationUsingKeyFrames>

                                            </Storyboard>

                                        </VisualState>

                                        <VisualState x:Name="InsertRowCollapsed">

                                            <Storyboard>

                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PART_AddNewRow" Storyboard.TargetProperty="Visibility">

                                                   
    <DiscreteObjectKeyFrame KeyTime="0">

                                                        <DiscreteObjectKeyFrame.Value>

                                                           
    <Visibility>Collapsed</Visibility>

                                                       
    </DiscreteObjectKeyFrame.Value>

                                                    </DiscreteObjectKeyFrame>

                                                </ObjectAnimationUsingKeyFrames>

                                            </Storyboard>

                                        </VisualState>

                                    </VisualStateGroup>

                                    <VisualStateGroup x:Name="DisabledStates">

                                        <VisualState x:Name="Enabled"/>

                                        <VisualState x:Name="Disabled">

                                            <Storyboard>

                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="Background_Disabled" Storyboard.TargetProperty="Visibility">

                                                    <DiscreteObjectKeyFrame KeyTime="0">

                                                       
    <DiscreteObjectKeyFrame.Value>

                                                           
    <Visibility>Visible</Visibility>

                                                        </DiscreteObjectKeyFrame.Value>

                                                   
    </DiscreteObjectKeyFrame>

                                                </ObjectAnimationUsingKeyFrames>

                                            </Storyboard>

                                        </VisualState>

                                    </VisualStateGroup>

                                </VisualStateManager.VisualStateGroups>

                                <Grid.RowDefinitions>

                                    <RowDefinition Height="Auto"/>

                                    <RowDefinition x:Name="PART_AttachedBehaviorRow" Height="Auto"/>

                                    <RowDefinition/>

                                    <RowDefinition x:Name="ScrollBarRow" MinHeight="0" Height="0"/>

                                    <RowDefinition Height="Auto"/>

                                </Grid.RowDefinitions>

                                <Grid.ColumnDefinitions>

                                    <ColumnDefinition/>

                                    <ColumnDefinition x:Name="ScrollBarColumn"
    MinWidth="0" Width="0"/>

                                    <ColumnDefinition Width="Auto"/>

                                </Grid.ColumnDefinitions>

                                <telerik:GridViewGroupPanel x:Name="PART_GroupPanel"

                        Grid.ColumnSpan="3"

                        Visibility="{TemplateBinding Visibility}"

                        Background="{TemplateBinding GroupPanelBackground}"

                        Foreground="{TemplateBinding GroupPanelForeground}"

                        BorderBrush="{StaticResource GridView_GroupPanelOuterBorder}"/>

                                <ItemsControl x:Name="PART_ControlPanelItemsControl" Grid.Column="2" IsTabStop="False" HorizontalAlignment="Right">

                                    <ItemsControl.ItemsPanel>

                                        <ItemsPanelTemplate>

                                            <StackPanel Orientation="Horizontal"/>

                                        </ItemsPanelTemplate>

                                    </ItemsControl.ItemsPanel>

                                    <ItemsControl.ItemTemplate>

                                        <DataTemplate>

                                            <telerik:ControlPanelItemControl />

                                        </DataTemplate>

                                    </ItemsControl.ItemTemplate>

                                </ItemsControl>

                                <Border

                        Name="PART_MasterGridContainer"

                        Grid.Row="2"

                        Grid.RowSpan="2"

                        Grid.ColumnSpan="3"

                        Background="{TemplateBinding Background}"

                        Margin="0,-1,0,0"

                        BorderBrush="{TemplateBinding BorderBrush}"

                        BorderThickness="{TemplateBinding BorderThickness}"

                        Padding="{TemplateBinding Padding}"/>

                                <telerik:GridViewScrollViewer x:Name="PART_ItemsScrollViewer"

                        Background="Transparent"

                        CanContentScroll="True"

                        Grid.Row="2"

                        Grid.RowSpan="2"

                        Grid.ColumnSpan="3"

                        Margin="1,0,1,1">

                                    <telerik:GridViewScrollViewer.HeaderRow>

                                        <telerik:GridViewHeaderRow x:Name="PART_HeaderRow" IndentLevel="{TemplateBinding
    GroupCount}"
    Visibility="{TemplateBinding Visibility}"/>

                                    </telerik:GridViewScrollViewer.HeaderRow>

                                    <telerik:GridViewScrollViewer.NewRow>

                                        <telerik:GridViewNewRow Name="PART_AddNewRow" IndentLevel="{TemplateBinding
    GroupCount}"
    Visibility="{TemplateBinding Visibility}"/>

                                    </telerik:GridViewScrollViewer.NewRow>

                                    <telerik:GridViewScrollViewer.FooterRow>

                                        <telerik:GridViewFooterRow x:Name="PART_FooterRow" IndentLevel="{TemplateBinding
    GroupCount}"
    Visibility="{TemplateBinding Visibility}"/>

                                    </telerik:GridViewScrollViewer.FooterRow>

                                    <telerik:GridViewVirtualizingPanel x:Name="PART_GridViewVirtualizingPanel"/>

                                </telerik:GridViewScrollViewer>

                                <telerik:ScrollPositionIndicator x:Name="PART_ScrollPositionIndicator"

                        Margin="0,0,28,0"

                        IsHitTestVisible="False"

                        HorizontalAlignment="Right"

                        Grid.Row="2"

                        Grid.ColumnSpan="3"

                        Visibility="{Binding IsScrolling, Mode=TwoWay, RelativeSource={RelativeSource
    TemplatedParent}, Converter={StaticResource
    BooleanToVisibilityConverter}}"

                        ContentTemplate="{TemplateBinding ScrollPositionIndicatorTemplate}"/>

                                <Border x:Name="PART_FrozenColumnsPreview"

                        Grid.Row="1"

                        Visibility="Collapsed"

                        HorizontalAlignment="Left"

                        VerticalAlignment="Stretch"

                        Grid.RowSpan="4"

                        Background="#33000000"

                        Width="6"/>

                                <telerik:GridViewLoadingIndicator x:Name="PART_GridViewLoadingIndicator"

                        Visibility="Collapsed"

                        IsBusy="{Binding IsBusy, Mode=TwoWay, RelativeSource={RelativeSource
    TemplatedParent}}"

                        Grid.RowSpan="4"

                        Grid.ColumnSpan="3"/>

                                <Rectangle x:Name="Background_Disabled" Fill="{StaticResource
    Background_Disabled}" IsHitTestVisible="False" Grid.RowSpan="5" Grid.ColumnSpan="3" Visibility="Collapsed"/>

                            </Grid>

                            <Grid Grid.Row="1"

                               
    <telerik:RadButton Width="50" content="Click"/>

                            </Grid>

                        </Grid>

                    </ControlTemplate>

                </Setter.Value>

            </Setter>

        </Style>

     
  2. Vanya Pavlova
    Admin
    Vanya Pavlova avatar
    2019 posts

    Posted 23 Jul 2014 Link to this post

    Hi Ghasem,


    I've modfied your style and wrap it in a runnable solution, that you could test by your side. 

    Hope this helps. 

    Regards,
    Vanya Pavlova
    Telerik
     
    Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos and start improving your app based on facts, not hunches.
     
  3. Ghasem
    Ghasem avatar
    15 posts
    Member since:
    May 2014

    Posted 28 Jul 2014 Link to this post

    Thank you for your help. I have another question that you might help me, I want to add a button below the grid view template. Plz help me do it.
  4. Vanya Pavlova
    Admin
    Vanya Pavlova avatar
    2019 posts

    Posted 28 Jul 2014 Link to this post

    Hi Ghasem,


    Thank you for getting back to us.

    What should be the purpose of this button within the template of RadGridView?  


    Regards,
    Vanya Pavlova
    Telerik
     
    Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos and start improving your app based on facts, not hunches.
     
  5. Ghasem
    Ghasem avatar
    15 posts
    Member since:
    May 2014

    Posted 28 Jul 2014 Link to this post

    For example I want to insert a TextBlock in GridView Template that shows count of rows of GridView.
  6. Answer
    Vanya Pavlova
    Admin
    Vanya Pavlova avatar
    2019 posts

    Posted 28 Jul 2014 Link to this post

    Hi Ghasem,


    Thank you for getting back to us. 

    You could use Aggregate Functions to display total number of items in RadGridView. Another approach would be to predefine the tempplate of RadGridView and place a TextBlock elements and bind its Text property to the Items.Count of the grid. 

    I'm attaching you small sample demo, which illustrates how to achieve your goal. 


    Regards,
    Vanya Pavlova
    Telerik
     
    Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos and start improving your app based on facts, not hunches.
     
  7. Ghasem
    Ghasem avatar
    15 posts
    Member since:
    May 2014

    Posted 03 Aug 2014 Link to this post

    Thank you.I Really appreciate your help.
Back to Top