New to Telerik UI for ASP.NET AJAX? Download free 30-day trial

Grouping

Received  FolderName  
 ReceivedFromFolder nameSize
123
 Item 1 to 20 of 52
Page:
of 3 Page size:
Received from date: Sunday, March 28, 2010
FolderName: Deleted Items
   3/28/2010NBullard@web.comDeleted Items8
   3/28/2010SWard@web.comDeleted Items65
   3/28/2010TSholl@web.comDeleted Items9
FolderName: Drafts
   3/28/2010EWarner@web.comDrafts2
   3/28/2010GTomlinson@web.comDrafts6
Received from date: Saturday, March 27, 2010
FolderName: Deleted Items
   3/27/2010FDuncan@web.comDeleted Items54
   3/27/2010SBonner@web.comDeleted Items4378
FolderName: Drafts
   3/27/2010KAnn@web.comDrafts2
   3/27/2010LSanborn@web.comDrafts87
FolderName: Junk E-mail
   3/27/2010JGreenawalt@web.comJunk E-mail5678
   3/27/2010CCox@web.comJunk E-mail234
   3/27/2010EOmara@web.comJunk E-mail5
Received from date: Friday, March 26, 2010
FolderName: Inbox
   3/26/2010ARodacker@web.comInbox856
   3/26/2010ACatherina@web.comInbox3
   3/26/2010ISaline@web.comInbox23
   3/26/2010CPeters@web.comInbox23
FolderName: Junk E-mail
   3/26/2010FHeckendora@web.comJunk E-mail3
FolderName: Outbox
   3/26/2010BAtkinson@web.comOutbox5
   3/26/2010BNehling@web.comOutbox645
FolderName: Sent Items
   3/26/2010JQueer@web.comSent Items89
This example demonstrates how GroupByExpressions can be used in Telerik RadGrid:
Creating group-by expressions - GridGroupByField Properties:
  • FieldName: name of any field from the DataSource
  • FieldAlias: alias string. This cannot contain blanks or other reserved symbols like ',', '.' etc.
  • Aggregate: any of - min, max, sum, count, last, first etc (the same as in GridAggregateFunction enumeration)
  • SortOrder: acs or desc - the sort order of the grouped items
  • HeaderText: specifies the name to use for the field when it appears in the group header and in the group panel. This property lets you specify a field name that includes blanks or reserved characters. This property is only used for fields in the SelectFields collection. Meaningful for items from the SelectFields collection only.
  • FormatString: specifies a format string for formatting field values when they appear in the group header. This property is only used for fields in the SelectFields collection. Meaningful for items from the SelectFields collection only.
  • HeaderValueSeparator: specifies a string that appears in the group header between the header text and the value (or aggregated value). This property is only used for fields in the SelectFields collection. Meaningful for items from the SelectFields collection only.
Note that grouping is not supported with simple data-binding (calling DataBind()). See the Simple data binding demo from the Populating with data section for more info about the limitations of this binding mode.
  • DefaultCS.aspx
<%@ Page Language="c#"  %>

<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml'>
<head runat="server">
    <title>Telerik ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <telerik:RadScriptManager runat="server" ID="RadScriptManager1" />
    <telerik:RadSkinManager ID="RadSkinManager1" runat="server" ShowChooser="true" />
    <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" UpdateInitiatorPanelsOnly="true">
        <AjaxSettings>
            <telerik:AjaxSetting AjaxControlID="RadGrid1">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="RadGrid1" LoadingPanelID="RadAjaxLoadingPanel1"></telerik:AjaxUpdatedControl>
                </UpdatedControls>
            </telerik:AjaxSetting>
        </AjaxSettings>
    </telerik:RadAjaxManager>
    <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server">
    </telerik:RadAjaxLoadingPanel>
    <div class="demo-container no-bg">
        <telerik:RadGrid RenderMode="Lightweight" ID="RadGrid1" DataSourceID="SqlDataSource1" runat="server" PageSize="20"
            AllowSorting="True" AllowMultiRowSelection="True" AllowPaging="True" ShowGroupPanel="True"
            AutoGenerateColumns="False" GridLines="none">
            <PagerStyle Mode="NextPrevNumericAndAdvanced"></PagerStyle>
            <MasterTableView Width="100%">
                <GroupByExpressions>
                    <telerik:GridGroupByExpression>
                        <SelectFields>
                            <telerik:GridGroupByField FieldAlias="Received" FieldName="Received" FormatString="{0:D}"
                                HeaderValueSeparator=" from date: "></telerik:GridGroupByField>
                        </SelectFields>
                        <GroupByFields>
                            <telerik:GridGroupByField FieldName="Received" SortOrder="Descending"></telerik:GridGroupByField>
                        </GroupByFields>
                    </telerik:GridGroupByExpression>
                    <telerik:GridGroupByExpression>
                        <SelectFields>
                            <telerik:GridGroupByField FieldAlias="FolderName" FieldName="FolderName"></telerik:GridGroupByField>
                        </SelectFields>
                        <GroupByFields>
                            <telerik:GridGroupByField FieldName="FolderName"></telerik:GridGroupByField>
                        </GroupByFields>
                    </telerik:GridGroupByExpression>
                </GroupByExpressions>
                <Columns>
                    <telerik:GridBoundColumn SortExpression="Received" HeaderText="Received" HeaderButtonType="TextButton"
                        DataField="Received" DataFormatString="{0:d}">
                    </telerik:GridBoundColumn>
                    <telerik:GridBoundColumn SortExpression="From" HeaderText="From" HeaderButtonType="TextButton"
                        DataField="From">
                    </telerik:GridBoundColumn>
                    <telerik:GridBoundColumn SortExpression="FolderName" HeaderText="Folder name" HeaderButtonType="TextButton"
                        DataField="FolderName">
                    </telerik:GridBoundColumn>
                    <telerik:GridBoundColumn SortExpression="Size" HeaderText="Size" HeaderButtonType="TextButton"
                        DataField="Size">
                    </telerik:GridBoundColumn>
                </Columns>
            </MasterTableView>
            <ClientSettings ReorderColumnsOnClient="True" AllowDragToGroup="True" AllowColumnsReorder="True">
                <Selecting AllowRowSelect="True"></Selecting>
                <Resizing AllowRowResize="True" AllowColumnResize="True" EnableRealTimeResize="True"
                    ResizeGridOnColumnResize="False"></Resizing>
            </ClientSettings>
            <GroupingSettings ShowUnGroupButton="true"></GroupingSettings>
        </telerik:RadGrid>
    </div>
    <asp:SqlDataSource ID="SqlDataSource1" ConnectionString="<%$ ConnectionStrings:TelerikConnectionString %>"
        ProviderName="System.Data.SqlClient" SelectCommand="SELECT * FROM Mails" runat="server"></asp:SqlDataSource>
    </form>
</body>
</html>

Support & Learning Resources

Find Assistance