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

📄 selecteditmodecode.aspx.cs

📁 《圣殿祭司的ASP.NET 2.0开发详解——使用C#》光盘内容.包含了书籍所含的源代码.非常经典的一本asp.net2.0的书籍
💻 CS
字号:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Drawing;

public partial class SelectEditModeCode : System.Web.UI.Page
{
	protected void Page_Load(object sender, EventArgs e)
	{
		if (!IsPostBack)
		{
			//txtColumn.Text = "请选择任何意一行";
			setGridViewStyle();
			setFields();
		}

		//设置SqlDataSource连接及Select命令
		sqldsEmployees.ConnectionString = ConfigurationManager.ConnectionStrings["NorthwindConnectionString"].ConnectionString;
		sqldsEmployees.SelectCommand = "select EmployeeID,LastName,FirstName,Title,City from Employees";
		sqldsEmployees.UpdateCommand = "update Employees set LastName=@LastName,Title=@Title where EmployeeID=@EmployeeID";
		//设置GridView数据源ID
		gviewEmployees.DataSourceID = sqldsEmployees.ID;

	}

	//设置GridView外观样式
	private void setGridViewStyle()
	{
		gviewEmployees.AutoGenerateColumns = false;
		//设置Row的键值组成,具有唯一性
		string[] KeyNames = new string[] { "EmployeeID" };
		gviewEmployees.DataKeyNames = KeyNames;

		//设置GridView属性
		gviewEmployees.AllowPaging = true;	//设置分页
		gviewEmployees.AllowSorting = true;	//设置排序
		gviewEmployees.Font.Size = 10;		//设置字号大小
		gviewEmployees.GridLines = GridLines.Both;	//设置网格线
		gviewEmployees.PageSize = 15;
		//分页位置
		gviewEmployees.PagerSettings.Position = PagerPosition.TopAndBottom;
		//分页对齐
		gviewEmployees.PagerStyle.HorizontalAlign = HorizontalAlign.Center; 

		gviewEmployees.HeaderStyle.BackColor = Color.Tan;
		gviewEmployees.RowStyle.BackColor = Color.LightGoldenrodYellow;
		gviewEmployees.AlternatingRowStyle.BackColor = Color.PaleGoldenrod;
		gviewEmployees.HeaderStyle.ForeColor = Color.Black;
		gviewEmployees.PagerStyle.BackColor = Color.Goldenrod;
		gviewEmployees.SelectedRowStyle.BackColor = Color.LightBlue;
	}

	//创建及设置Fields字段
	private void setFields()
	{
		//创建命令字段
		CommandField selectField = new CommandField();
		selectField.ButtonType = ButtonType.Link;
		selectField.ShowSelectButton = true;	//显示选择按钮
		selectField.SelectText = "选择行";
		selectField.ItemStyle.Wrap = false;

		//创建命令字段
		CommandField editField = new CommandField();
		editField.ButtonType = ButtonType.Button;
		editField.ShowEditButton = true;  //显示删除按钮
		editField.ShowCancelButton = true;  //显示删除按钮
		editField.EditText = "编辑";
		editField.UpdateText = "更新";
		editField.CancelText = "取消";
		editField.ItemStyle.Wrap = false;

		//创建数据绑定字段
		BoundField employeeidField = new BoundField();
		BoundField lastnameField = new BoundField();
		BoundField firstnameField = new BoundField();
		BoundField titleField = new BoundField();
		BoundField cityField = new BoundField();

		employeeidField.DataField = "EmployeeID";
		employeeidField.HeaderText = "员工代号";
		employeeidField.ItemStyle.Wrap = false;
		employeeidField.ReadOnly = true;	//只读,编辑模式不能修改

		lastnameField.DataField = "LastName";
		lastnameField.HeaderText = "名字";
		lastnameField.ItemStyle.Wrap = false;
		lastnameField.Visible = false;

		firstnameField.DataField = "FirstName";		//指定数据源字段
		firstnameField.HeaderText = "姓氏";	//设置字段头名称
		firstnameField.ItemStyle.Wrap = false;
		firstnameField.ReadOnly = true;

		titleField.DataField = "Title";
		titleField.HeaderText = "职称";
		titleField.ItemStyle.Wrap = false;

		cityField.DataField = "City";
		cityField.HeaderText = "县市";
		cityField.ItemStyle.Wrap = false;


		//将字段添加到GridView
		gviewEmployees.Columns.Add(selectField);
		gviewEmployees.Columns.Add(editField);
		gviewEmployees.Columns.Add(employeeidField);
		gviewEmployees.Columns.Add(lastnameField);
		gviewEmployees.Columns.Add(firstnameField);
		gviewEmployees.Columns.Add(titleField);
		gviewEmployees.Columns.Add(cityField);
	}

	//编辑事件
	protected void gviewEmployee_RowEditing(object sender, GridViewEditEventArgs e)
	{
		//设置GridView在编辑模式时,TextBox字段宽度及背景颜色
		//LastName字段
		gviewEmployees.Columns[3].ControlStyle.Width = 50;
		gviewEmployees.Columns[3].ControlStyle.BackColor = Color.LightBlue;
		gviewEmployees.ShowFooter = true;
		gviewEmployees.Columns[3].FooterText = "可编辑";
		gviewEmployees.Columns[3].FooterStyle.BackColor = Color.Red;
		//Title字段
		gviewEmployees.Columns[5].ControlStyle.Width = 100;
		gviewEmployees.Columns[5].ControlStyle.BackColor = Color.LightPink;
		gviewEmployees.ShowFooter = true;
		gviewEmployees.Columns[5].FooterText = "可编辑";
		gviewEmployees.Columns[5].FooterStyle.BackColor = Color.Red;
		//City字段
		gviewEmployees.Columns[6].ControlStyle.Width = 100;
		gviewEmployees.Columns[6].ControlStyle.BackColor = Color.LightGreen;
		gviewEmployees.ShowFooter = true;
		gviewEmployees.Columns[6].FooterText = "可编辑";
		gviewEmployees.Columns[6].FooterStyle.BackColor = Color.Red;
	}

	//取消编辑事件
	protected void gviewEmployee_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
	{
		//取消编辑时隐藏Footer
		gviewEmployees.ShowFooter = false;
	}

	protected void gviewEmployee_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
	{
		//判断目前是否处于编辑模式(EditIndex为1),则禁止选择换行
		if (gviewEmployees.EditIndex != -1)
		{
			gviewEmployees.SelectedIndex = -1;
			e.Cancel = true;
			Literal txtMsg = new Literal();
			txtMsg.Text = "<script>alert('编辑模式下禁止选择换行!')</script>";
			Page.Controls.Add(txtMsg);
		}

	}

	protected void gviewEmployee_SelectedIndexChanged(object sender, EventArgs e)
	{
		Label txtMsg = new Label();
		switch (gviewEmployees.Rows[gviewEmployees.SelectedIndex].RowState)
		{
			case DataControlRowState.Selected:
				txtMsg.Text = "您选择奇数行,行状态为:" + gviewEmployees.Rows[gviewEmployees.SelectedIndex].RowState + ":" + gviewEmployees.Rows[gviewEmployees.SelectedIndex].Cells[3].Text;
				break;
			case (DataControlRowState.Alternate | DataControlRowState.Selected):
				txtMsg.Text = "您选择偶数行,行状态为:" + gviewEmployees.Rows[gviewEmployees.SelectedIndex].RowState + ":" + gviewEmployees.Rows[gviewEmployees.SelectedIndex].Cells[3].Text;
				break;
		}

		Page.Controls.Add(txtMsg);
	}
}

⌨️ 快捷键说明

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