public partial class DefaultCS : System.Web.UI.Page { protected void Page_Load(object sender, System.EventArgs e) { if (!Page.IsPostBack) { AddTab("Personal Info", true); RadPageView pageView = new RadPageView(); pageView.ID = "Personal"; RadMultiPage1.PageViews.Add(pageView); AddTab("Education Info", false); AddTab("Professional Info", false); } } private void AddTab(string tabName, bool enabled) { RadTab tab = new RadTab(tabName); tab.Enabled = enabled; RadTabStrip1.Tabs.Add(tab); } protected void RadMultiPage1_PageViewCreated(object sender, RadMultiPageEventArgs e) { Control pageViewContents = LoadControl(e.PageView.ID + "CS.ascx"); pageViewContents.ID = e.PageView.ID + "userControl"; e.PageView.Controls.Add(pageViewContents); } | <MyControls:GroupSelector runat="server" id="GroupSelectorControl"> |
| GroupSelector.GroupNumber = "0003" |
protected void RadGridLot_PreRender(object sender, EventArgs e){ switch (RadComboBoxFilter.SelectedItem.Value) { case WECOBLL.WECODefs.sLotOpen: RadGridLot.MasterTableView.GetColumn("AddJob").Visible = true; RadGridLot.MasterTableView.DetailTables[0].GetColumn("Action1").Visible = true; RadGridLot.MasterTableView.DetailTables[0].GetColumn("Action2").Visible = true; RadGridLot.MasterTableView.DetailTables[0].GetColumn("Form1").Visible = true; RadGridLot.MasterTableView.GetColumn("OutgoingNetWeightTotal").Visible = false; break; case WECOBLL.WECODefs.sLotShipped: RadGridLot.MasterTableView.GetColumn("AddJob").Visible = false; RadGridLot.MasterTableView.DetailTables[0].GetColumn("Action1").Visible = true; RadGridLot.MasterTableView.DetailTables[0].GetColumn("Action2").Visible = false; RadGridLot.MasterTableView.DetailTables[0].GetColumn("Form1").Visible = true; RadGridLot.MasterTableView.GetColumn("OutgoingNetWeightTotal").Visible = true; break; case WECOBLL.WECODefs.sLotClosed: RadGridLot.MasterTableView.GetColumn("AddJob").Visible = false; RadGridLot.MasterTableView.DetailTables[0].GetColumn("Action1").Visible = false; RadGridLot.MasterTableView.DetailTables[0].GetColumn("Action2").Visible = false; RadGridLot.MasterTableView.DetailTables[0].GetColumn("Form1").Visible = true; RadGridLot.MasterTableView.GetColumn("OutgoingNetWeightTotal").Visible = true; break; }}<telerik:RadGrid ID="RadGridLot" runat="server" DataSourceID="ObjectDataSourceLots" GridLines="None" ondetailtabledatabind="RadGridLot_DetailTableDataBind" AllowAutomaticInserts="True" AutoGenerateColumns="False" oninsertcommand="RadGridLot_InsertCommand" Skin="Web20" onitemcommand="RadGridLot_ItemCommand" onprerender="RadGridLot_PreRender" AllowSorting="True" onneeddatasource="RadGridLot_NeedDataSource" onitemcreated="RadGridLot_ItemCreated"> <ClientSettings> <Scrolling AllowScroll="True" ScrollHeight="600px" /> </ClientSettings> <MasterTableView DataSourceID="ObjectDataSourceLots" DataKeyNames="Name,Id" CommandItemDisplay="Top" AllowNaturalSort="False" HierarchyDefaultExpanded="True"> <RowIndicatorColumn> <HeaderStyle Width="20px"></HeaderStyle> </RowIndicatorColumn> <DetailTables> <telerik:GridTableView Name="Jobs" runat="server" DataSourceID="ObjectDataSourceJobs" DataKeyNames="Id" NoDetailRecordsText="No Jobs to display." BackColor="#FFFFCC" > <RowIndicatorColumn> <HeaderStyle Width="20px" /> </RowIndicatorColumn> <DetailTables> <telerik:GridTableView runat="server" Name="Bins" DataKeyNames="Id" NoDetailRecordsText="No Bins to display."> <CommandItemSettings></CommandItemSettings> <Columns> <telerik:GridTemplateColumn DataField="Id" DataType="System.Int64" HeaderText="Job Id" SortExpression="Id" UniqueName="Id" Visible="False"> <ItemTemplate> <asp:Label ID="JobIdLabel" runat="server" Text='<%# Eval("Id") %>'></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridBoundColumn DataField="Name" HeaderText="Bin" SortExpression="Name" UniqueName="Name"> </telerik:GridBoundColumn> <telerik:GridNumericColumn DataField="AverageMoistureAsFraction" DataType="System.Double" DataFormatString="{0:P1}" HeaderText="Avg. Moisture" SortExpression="AverageMoistureAsFraction" UniqueName="JobAverageMoistureAsFraction"> <HeaderStyle HorizontalAlign="Center" /> <ItemStyle HorizontalAlign="Center" /> </telerik:GridNumericColumn> <telerik:GridCheckBoxColumn DataField="DoorIsOpen" DataType="System.Boolean" HeaderText="Door Open" UniqueName="DoorisOpen" > <HeaderStyle HorizontalAlign="Center" /> <ItemStyle HorizontalAlign="Center" /> </telerik:GridCheckBoxColumn> <telerik:GridCheckBoxColumn DataField="IsManual" DataType="System.Boolean" HeaderText="Manual" UniqueName="IsManual" > <HeaderStyle HorizontalAlign="Center" /> <ItemStyle HorizontalAlign="Center" /> </telerik:GridCheckBoxColumn> </Columns> </telerik:GridTableView> </DetailTables><CommandItemSettings ExportToPdfText="Export to Pdf"></CommandItemSettings> <ExpandCollapseColumn Visible="True"> </ExpandCollapseColumn> <Columns> <telerik:GridTemplateColumn DataField="Id" DataType="System.Int64" HeaderText="Job Id" SortExpression="Id" UniqueName="Id" Visible="False"> <ItemTemplate> <asp:Label ID="JobIdLabel" runat="server" Text='<%# Eval("Id") %>'></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridBoundColumn DataField="JobRefFormatted" HeaderText="Job Reference" SortExpression="JobRefFormatted" UniqueName="JobRefFormatted"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="JobStage" HeaderText="Stage" SortExpression="JobStage" UniqueName="JobStage"> </telerik:GridBoundColumn> <telerik:GridDateTimeColumn DataField="StartTime" DataType="System.DateTime" DataFormatString="{0:MM/dd hh:mm tt}" HeaderText="StartTime" SortExpression="StartTime" UniqueName="StartTime"> </telerik:GridDateTimeColumn> <telerik:GridNumericColumn DataField="JobAverageMoistureAsFraction" DataType="System.Double" DataFormatString="{0:P1}" HeaderText="Avg. Moisture" SortExpression="JobAverageMoistureAsFraction" UniqueName="JobAverageMoistureAsFraction"> <HeaderStyle HorizontalAlign="Center" /> <ItemStyle HorizontalAlign="Center" /> </telerik:GridNumericColumn> <telerik:GridBoundColumn DataField="OutgoingReceiptNumber" HeaderText="Ship Receipt #" SortExpression="OutgoingReceiptNumber" UniqueName="OutgoingReceiptNumber"> </telerik:GridBoundColumn> <telerik:GridButtonColumn CommandName="Action1" UniqueName="Action1" Text="" ></telerik:GridButtonColumn> <telerik:GridButtonColumn CommandName="Action2" UniqueName="Action2" Text="" ></telerik:GridButtonColumn> <telerik:GridButtonColumn CommandName="Form1" UniqueName="Form1" Text="" ></telerik:GridButtonColumn> </Columns> </telerik:GridTableView> </DetailTables> <CommandItemSettings AddNewRecordText="Enter New Lot" ShowRefreshButton="False" /> <ExpandCollapseColumn > </ExpandCollapseColumn> <Columns> <telerik:GridTemplateColumn DataField="LocationId" DataType="System.Int64" HeaderText="LocationId" SortExpression="LocationId" UniqueName="LocationId" Visible="False"> <ItemTemplate> <asp:Label ID="LocationIdLabel" runat="server" Text='<%# Eval("LocationId") %>'></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridBoundColumn DataField="LotRefFormatted" HeaderText="Lot Reference" SortExpression="LotRefFormatted" UniqueName="LotRefFormatted"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Grower" HeaderText="Grower" SortExpression="Grower" UniqueName="Grower"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Variety" HeaderText="Variety" SortExpression="Variety" UniqueName="Variety"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Field" HeaderText="Block" SortExpression="Field" UniqueName="Field"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="EstimatedNumberOfBins" DataType="System.Int64" HeaderText="Est. # Of Bins" SortExpression="EstimatedNumberOfBins" UniqueName="EstimatedNumberOfBins"> <HeaderStyle HorizontalAlign="Center" /> <ItemStyle HorizontalAlign="Center" /> </telerik:GridBoundColumn> <telerik:GridTemplateColumn DataField="Id" DataType="System.Int64" HeaderText="Id" SortExpression="Id" UniqueName="Id" Visible="False"> <ItemTemplate> <asp:Label ID="IdLabel" runat="server" Text='<%# Eval("Id") %>'></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="Name" HeaderText="Name" SortExpression="Name" UniqueName="Name" Visible="False"> <ItemTemplate> <asp:Label ID="NameLabel" runat="server" Text='<%# Eval("Name") %>'></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridNumericColumn DataField="OutgoingNetWeightTotal" DataType="System.Double" HeaderText="Outgoing Net Wt." SortExpression="OutgoingNetWeightTotal" UniqueName="OutgoingNetWeightTotal"> <HeaderStyle HorizontalAlign="Center" /> <ItemStyle HorizontalAlign="Center" /> </telerik:GridNumericColumn> <telerik:GridBoundColumn DataField="ReceivedOn" DataType="System.DateTime" DataFormatString="{0:MM/dd hh:mm tt}" HeaderText="Received On" SortExpression="ReceivedOn" UniqueName="ReceivedOn"> </telerik:GridBoundColumn> <telerik:GridButtonColumn CommandName="EditLot" UniqueName="EditLot" Text="Edit Lot" ></telerik:GridButtonColumn> <telerik:GridButtonColumn CommandName="AddJob" UniqueName="AddJob" Text="Create Job" ></telerik:GridButtonColumn> </Columns> <CommandItemTemplate> <asp:Button ID="ButtonInsert" runat="server" Text="+" OnClientClick="return ShowInsertLotForm();" /> <a href="#" onclick="return ShowInsertLotForm();">Add New Lot</a> </CommandItemTemplate> </MasterTableView> </telerik:RadGrid>
Thank you
Here the declaration:
<telerik:RadGrid runat="server" ID="GridProjectListRad" Skin="Windows7" AutoGenerateColumns="False" AllowSorting="true" Width="100%" AllowFilteringByColumn="true" AllowPaging="true" PageSize="10" ShowHeader="true" ShowFooter="false" ShowGroupPanel="true" > <ClientSettings ReorderColumnsOnClient="True" AllowDragToGroup="True" AllowColumnsReorder="True"> <Selecting AllowRowSelect="True"></Selecting> <Resizing AllowRowResize="True" AllowColumnResize="True" EnableRealTimeResize="True" ResizeGridOnColumnResize="False"></Resizing>
<Scrolling AllowScroll="True" UseStaticHeaders="true" SaveScrollPosition="True" FrozenColumnsCount="1"></Scrolling>
</ClientSettings> <HeaderContextMenu EnableAutoScroll="True"></HeaderContextMenu> <ExportSettings IgnorePaging="true" OpenInNewWindow="true"> </ExportSettings> <GroupingSettings ShowUnGroupButton="false" />
<Columns>
<telerik:GridHyperLinkColumn HeaderText="ProjectName" UniqueName="ProjectName" DataTextField="ProjectName"
SortExpression="ProjectName" HeaderStyle-Width="40%" FilterControlWidth="95%" />
<telerik:GridBoundColumn HeaderText="ProjectLeader" DataField="ProjectLeader" UniqueName="ProjectLeader"
SortExpression="ProjectLeader" HeaderStyle-Width="15%" FilterControlWidth="85%" />
<telerik:GridDateTimeColumn HeaderText="LastReport" DataField="LastReport" UniqueName="LastReport" SortExpression="LastReport" HeaderStyle-Width="15%" FilterControlWidth="85%" /> <telerik:GridBoundColumn HeaderText="LastModifiedBy" DataField="LastModifiedBy" UniqueName="LastModifiedBy" SortExpression="LastModifiedBy" HeaderStyle-Width="15%" FilterControlWidth="85%" />
<telerik:GridBoundColumn HeaderText="Status" DataField="Status" UniqueName="Status"
SortExpression="Status" HeaderStyle-Width="15%" FilterControlWidth="85%" ReadOnly="true" > <FilterTemplate> <telerik:RadComboBox runat="server" ID="FilterComboStatus" AutoPostBack="true" Filter="Contains" Skin="Windows7" Width="99%" OnSelectedIndexChanged="FilterComboStatus_SelectedIndexChanged"OnClientLoad="OnClientSelectedIndexChangedHandler" > </telerik:RadComboBox> </FilterTemplate>
<HeaderStyle HorizontalAlign="Center"></HeaderStyle> <ItemStyle HorizontalAlign="Center"></ItemStyle> </telerik:GridBoundColumn>
</Columns>
</MasterTableView> <SortingSettings EnableSkinSortStyles="false" /> </telerik:RadGrid>So, did we miss something? Why does the RadGrid look so bad after grouping?
Plus, how to allow multi grouping? Because each time we drop a column in the group header, it will replace the older one.
Thank you
William