⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 defaultcs.aspx.cs

📁 Telerik是很大的第三方软件制造商
💻 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 + -