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

📄 defaultcs.aspx.cs

📁 Telerik是很大的第三方软件制造商
💻 CS
字号:
using System.Collections;
using System.Data.OleDb;
using System;
using System.Data;
using System.Web.UI;
using System.Web.UI.WebControls;
using Telerik.QuickStart;
using Telerik.QuickStart.Grid;
using Telerik.WebControls;

namespace Telerik.GridExamplesCSharp.DataEditing.TemplateFormUpdate
{
	public class DefaultCS : XhtmlPage
	{
		protected System.Web.UI.WebControls.Label Label1;
		protected System.Web.UI.WebControls.Label Label2;
		protected Telerik.WebControls.RadGrid 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.
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		private void InitializeComponent()
		{
			this.RadGrid1.NeedDataSource += new Telerik.WebControls.GridNeedDataSourceEventHandler(this.RadGrid1_NeedDataSource);
			this.RadGrid1.ItemDataBound += new Telerik.WebControls.GridItemEventHandler(this.RadGrid1_ItemDataBound);
			this.RadGrid1.ItemCommand +=new GridCommandEventHandler(RadGrid1_ItemCommand);
			this.Load+=new EventHandler(Page_Load);
		}
		#endregion

		private void Page_Load(object sender, System.EventArgs e)
		{
			Label1.Text = string.Empty;
			if ( !IsPostBack )
			{
				this.Session["Employees"] = null;
			}
		}

		private void RadGrid1_NeedDataSource(object source, Telerik.WebControls.GridNeedDataSourceEventArgs e)
		{
			RadGrid1.DataSource = this.Employees;
		}

		private void RadGrid1_ItemCommand(object source, Telerik.WebControls.GridCommandEventArgs e)
		{
			if ( e.CommandName == "Update" )
			{
				GridEditableItem editedItem = e.Item as GridEditableItem;

				//Locate the changed row in the DataSource
				DataRow[] changedRows = this.Employees.Select( "EmployeeID = " + editedItem["EmployeeID"].Text );
			
				if (changedRows.Length != 1)
				{
					this.Label1.Text += "Unbale to locate the Employee for updating.";
					e.Canceled = true;
					return;
				}

				//Update new values
				Hashtable newValues = new Hashtable();

				newValues["Country"] = (editedItem.FindControl("TextBox7") as TextBox).Text;
				newValues["City"] = (editedItem.FindControl("TextBox8") as TextBox).Text;
				newValues["Region"] = (editedItem.FindControl("TextBox9") as TextBox).Text;
				newValues["HomePhone"] = (editedItem.FindControl("TextBox10") as TextBox).Text;
				newValues["BirthDate"] = (editedItem.FindControl("TextBox11") as TextBox).Text;
				newValues["TitleOfCourtesy"] = (editedItem.FindControl("ddlTOC") as DropDownList).SelectedItem.Value;
				newValues["Notes"] = (editedItem.FindControl("TextBox1") as TextBox).Text;
				newValues["Address"] = (editedItem.FindControl("TextBox6") as TextBox).Text;
				newValues["FirstName"] = (editedItem.FindControl("TextBox2") as TextBox).Text;
				newValues["LastName"] = (editedItem.FindControl("TextBox3") as TextBox).Text;
				newValues["HireDate"] = (editedItem.FindControl("Textbox5") as TextBox).Text;
				newValues["Title"] = (editedItem.FindControl("TextBox4") as TextBox).Text;

				changedRows[0].BeginEdit();
				try
				{					
					foreach( DictionaryEntry entry in newValues )
					{
						changedRows[0][(string)entry.Key] = entry.Value;
					}
					changedRows[0].EndEdit();
				}
				catch( Exception ex )
				{
					changedRows[0].CancelEdit();
					Label1.Text += "Unable to update Employees. Reason: " + ex.Message;
					e.Canceled = true;
				}

				//Code for updating the database can go here...
				Label1.Text += "Employee " + editedItem["EmployeeID"].Text + " updated";
			}
		}
		public DataTable Employees
		{
			get
			{
				object obj = this.Session["Employees"];
				if ( obj != null )
				{
					return (DataTable)obj;
				}

				DataTable myDataTable = new DataTable();

				myDataTable = DataSourceHelperCS.GetDataTable("SELECT * FROM Employees");
				this.Session["Employees"] = myDataTable;

				return myDataTable;
			}
		}

		private void RadGrid1_ItemDataBound(object sender, Telerik.WebControls.GridItemEventArgs e)
		{
			if(e.Item is GridEditFormItem && e.Item.IsInEditMode)
			{
				ArrayList tocs = new ArrayList( new string[] { "Dr.", "Mr.", "Mrs.", "Ms." } );

				DropDownList ddlTOC = (DropDownList)e.Item.FindControl("ddlTOC");

				ddlTOC.DataSource = tocs;
				ddlTOC.DataBind();

				object tocValue = DataBinder.Eval(e.Item.DataItem, "TitleOfCourtesy");

				if (tocValue == DBNull.Value)
				{
					tocValue =  "Mrs.";
				}
				ddlTOC.SelectedIndex = tocs.IndexOf( (string)tocValue );
				ddlTOC.DataSource = null;
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -