📄 defaultcs.aspx.cs
字号:
using System;
using System.Web.UI.WebControls;
using Telerik.QuickStart.Grid;
using Telerik.WebControls;
using Telerik.QuickStart;
namespace Telerik.GridExamplesCSharp.Hierarchy.DefiningStructure
{
public abstract class DefaultCS : XhtmlPage
{
protected System.Web.UI.WebControls.Button Button1;
protected System.Web.UI.WebControls.PlaceHolder PlaceHolder1;
private Telerik.WebControls.RadGrid RadGrid1;
private void DefineGridStructure()
{
this.RadGrid1 = new RadGrid();
this.RadGrid1.NeedDataSource += new GridNeedDataSourceEventHandler(this.RadGrid1_NeedDataSource);
this.RadGrid1.DetailTableDataBind += new GridDetailTableDataBindEventHandler(this.RadGrid1_DetailTableDataBind);
this.RadGrid1.CssClass = "RadGrid";
this.RadGrid1.Width = Unit.Percentage(100);
this.RadGrid1.PageSize = 5;
this.RadGrid1.AllowPaging = true;
this.RadGrid1.AutoGenerateColumns = false;
this.RadGrid1.GroupingEnabled = true;
this.RadGrid1.ShowGroupPanel = true;
this.RadGrid1.ClientSettings.AllowDragToGroup = true;
this.RadGrid1.MasterTableView.DataMember = "Customers";
this.RadGrid1.MasterTableView.PageSize = 15;
this.RadGrid1.MasterTableView.CssClass = "MasterTable";
this.RadGrid1.ItemStyle.CssClass = "GridRow";
this.RadGrid1.AlternatingItemStyle.CssClass = "GridRow";
this.RadGrid1.HeaderStyle.CssClass = "GridHeader";
this.RadGrid1.PagerStyle.CssClass = "GridPager";
this.RadGrid1.GroupHeaderItemStyle.CssClass = "GroupHeader";
this.RadGrid1.GroupPanel.PanelItemsStyle.CssClass = "GroupPanelItems";
this.RadGrid1.GroupPanel.PanelStyle.CssClass = "GroupPanel";
GridBoundColumn boundColumn;
boundColumn = new GridBoundColumn();
boundColumn.DataField = "CustomerID";
boundColumn.HeaderText = "CustomerID";
this.RadGrid1.MasterTableView.Columns.Add(boundColumn);
boundColumn = new GridBoundColumn();
boundColumn.DataField = "ContactName";
boundColumn.HeaderText = "Contact Name";
this.RadGrid1.MasterTableView.Columns.Add(boundColumn);
this.RadGrid1.MasterTableView.Columns.Add( new GridExpandColumn() );
this.RadGrid1.MasterTableView.GroupByExpressions.Add( new GridGroupByExpression("Country Group By Country") );
GridTableView tableViewOrders = new GridTableView(RadGrid1);
tableViewOrders.DataMember = "Orders";
this.RadGrid1.MasterTableView.DetailTables.Add( tableViewOrders );
GridGroupByExpression expression = new GridGroupByExpression();
GridGroupByField gridGroupByField = new GridGroupByField();
gridGroupByField = new GridGroupByField();
gridGroupByField.FieldName = "RequiredDate";
gridGroupByField.FormatString = "Required shipping date: {0}";
expression.SelectFields.Add( gridGroupByField );
gridGroupByField = new GridGroupByField();
gridGroupByField.FieldName = "Freight";
gridGroupByField.FormatString = "Total shipping cost is {0}";
expression.SelectFields.Add( gridGroupByField );
gridGroupByField = new GridGroupByField();
gridGroupByField.FieldName = "RequiredDate";
expression.GroupByFields.Add( gridGroupByField );
tableViewOrders.GroupByExpressions.Add( expression );
boundColumn = new GridBoundColumn();
boundColumn.DataField = "OrderID";
boundColumn.HeaderText = "OrderID";
tableViewOrders.Columns.Add(boundColumn);
boundColumn = new GridBoundColumn();
boundColumn.DataField = "OrderDate";
boundColumn.HeaderText = "Date Ordered";
tableViewOrders.Columns.Add(boundColumn);
GridTableView tableViewOrderDetails = new GridTableView(RadGrid1);
tableViewOrderDetails.DataMember = "OrderDetails";
tableViewOrders.DetailTables.Add( tableViewOrderDetails );
boundColumn = new GridBoundColumn();
boundColumn.DataField = "UnitPrice";
boundColumn.HeaderText = "Unit Price";
tableViewOrderDetails.Columns.Add(boundColumn);
boundColumn = new GridBoundColumn();
boundColumn.DataField = "Quantity";
boundColumn.HeaderText = "Quantity";
tableViewOrderDetails.Columns.Add(boundColumn);
this.PlaceHolder1.Controls.Add( RadGrid1 );
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
this.DefineGridStructure();
InitializeComponent();
base.OnInit(e);
}
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
}
#endregion
private void RadGrid1_NeedDataSource(object source, Telerik.WebControls.GridNeedDataSourceEventArgs e)
{
if (!e.IsFromDetailTable)
{
RadGrid1.DataSource = DataSourceHelperCS.GetDataTable("SELECT * FROM Customers");
}
}
private void RadGrid1_DetailTableDataBind(object source, Telerik.WebControls.GridDetailTableDataBindEventArgs e)
{
GridDataItem parentItem = e.DetailTableView.ParentItem as GridDataItem;
if ( parentItem.Edit )
{
return;
}
if (e.DetailTableView.DataMember == "Orders")
{
e.DetailTableView.DataSource = DataSourceHelperCS.GetDataTable("SELECT * FROM Orders Where CustomerID = '" + parentItem["CustomerID"].Text + "'");
}
else
if (e.DetailTableView.DataMember == "OrderDetails")
{
e.DetailTableView.DataSource = DataSourceHelperCS.GetDataTable("SELECT * FROM [Order Details] Where OrderID = " + parentItem["OrderID"].Text);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -