C# GridView控件的增删查改
1、1、选择新建一个项目,例如asp.net的项目,按“确定”,接着添加一个web窗体
2、2、在工具箱的”数据“里找到GridView 控件,并且把GridView 放到界面上,还有选择TextBox,Button控件。
3、3、选择GridView 右击属性,选择事件,选择GridView 的以下事件单击。
4、4、在后台,写一个方法来查询数据,如GridViewBind方法,
List<DepartmentTab> depart = TaskRecordManger.GetDepartment();
--查询的方法在这里就不先省略
if (depart != null)
{
GridView1.DataSource = depart;//为GridView控件指名数据源
GridView1.DataBind();//GridView控件绑定数据
}
5、5、接着,在页面的加载事件 Page_Load里调用GridViewBind方法,
6、6、在GridView1_PageIndexChanging事件写如下代码
GridView1.PageIndex = e.NewPageIndex;
GridViewBind();
7、7、在GridView1_RowDataBound事件写如下代码,只要是样式的操作
//执行循环,保证每条数据都可以更新
for (i = 0; i < GridView1.Rows.Count; i++)
{
//首先判断是否是数据行
if (e.Row.RowType == DataControlRowType.DataRow)
{
//当鼠标停留时更改背景色
e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='pink'");
//当鼠标移开时还原背景色
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");
}
}
8、8、在GridView1_RowCancelingEdit事件写如下代码,用于取消操作
GridView1.EditIndex = -1;
GridViewBind();
9、9、在GridView1_RowDeleting事件写如下代码,用于删除数据
DepartmentTab depart = new DepartmentTab();
string departID = GridView1.DataKeys[e.RowIndex].Values[0].ToString(); //取出要删除记录的主键值
depart.DepartID = Convert.ToInt32(departID);
int k = UserDeptManger.DeleteOrUpdateDepart("delete", depart);
if (k > 0)//根据主键使用DeleteByProc方法删除
{
GridView1.EditIndex = -1;
GridViewBind();//重新绑定数据
// Response.Write("<script language=javascript>alert('删除成功!');</script>");
}
GridView1.EditIndex = -1;
GridViewBind();//重新绑定数据
10、10、在GridView1_RowEditing事件写如下代码
GridView1.EditIndex = e.NewEditIndex; //GridView编辑项索引等于单击行的索引
GridViewBind();
11、11、在GridView1_RowUpdating事件写如下代码
DepartmentTab depart = new DepartmentTab();
TaskTab task = new TaskTab();
string departID = GridView1.DataKeys[e.RowIndex].Values[0].ToString(); //取出记录的主键值
depart.DepartName = ((TextBox)GridView1.Rows[e.RowIndex].FindControl("tbxName")).Text;
depart.DepartID = Convert.ToInt32(departID);
int aa = UserDeptManger.DeleteOrUpdateDepart("update", depart);
if (aa > 0)//使用Usersmr类UpdateByProc方法修改用户信息
{
GridViewBind();
// Response.Write("<script language=javascript>alert('修改成功!');</script>");
}
GridView1.EditIndex = -1;
GridViewBind();
12、最后,运行修改如下图