网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 大学论文导航 设计下载 最新论文 下载排行 原创论文 论文源代码
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > ASP.net > 正文

DataGrid中实现编辑、删除、分类以及分页操作

来源:http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12
myData
myCommand.Fill(myDataSet, "Products");
///最后返回myDataSet对象
return myDataSet;
}
这段代码执行给定的SQL语句访问数据库,私有函数GetProductData返回一个包含数据记录的DataSet。下一步,让我们看如何编辑记录:
/// <summary>
/// 这个函数只有当用户点击Edit按钮时才会被激活
/// </summary>
/// <paramname="sender"></param>
/// <paramname="E"></param>
protected void MyDataGrid_Edit(Object sender, DataGridCommandEventArgs E)
{
///找出被选定项目的索引(ItemIndex),并且进一步绑定数据
MyDataGrid.EditItemIndex = (int)E.Item.ItemIndex;
BindGrid();
}
通过上面代码所附带的注解大家也能明白MyDataGrid_Edit函数的功能:当用户点击Edit按钮时激活MyDataGrid_Edit函数,并且程序找到所要编辑的记录的索引,把该索引号分配给DataGrid的EditItemIndex属性。
如果用户点击Cancel按钮,将调用我们在上面的.aspx文件中提到的MyDataGrid_Cancel函数,程序如果分配给DataGrid属性 EditItemIndex的值为-1,就意味着用户没有选择Edit,程序如下:
/// <summary>
/// 用户点击Cancel按钮时激活MyDataGrid函数
/// </summary>
/// <paramname="sender"></param>
/// <paramname="E"></param>
protected void MyDataGrid_Cancel(Object sender, DataGridCommandEventArgs E)
{
MyDataGrid.EditItemIndex = -1;
BindGrid();
}
下面的代码像我们展现了如何从DataGrid中删除一条选中的记录。我们知道Web控件DataGrid有一DataKeyField属性,事实上它就包含了每条记录的ProductID字段值。您一定会问如何通过DataKeyField属性得到DataGrid中选中记录的ProductID值呢?下面这段代码会让您释然的:
-----
int ProductID =(int)MyDataGrid.DataKeys[(int)E.Item.ItemIndex];
-----
MyDataGrid_Delete函数代码如下:
/// <summary>
///从DataSet中删除一条记录
/// </summary>
/// <param name="sender"></param>
/// <param name="E"></param>
protected void MyDataGrid_Delete(Object sender, DataGridCommandEventArgs E)
{
int ProductID =(int)MyDataGrid.DataKeys[(int)E.Item.ItemIndex];
string SQLStatement="Delete Products WHERE ProductID="+ProductID;
string myConnectionString = "server=localhost;uid=sa;pwd=;database=NorthWind";

SqlConnection myConnection = new SqlConnection(myConnectionString);
SqlCommand myCommand = new SqlCommand (SQLStatement,myConnection);

myCommand.CommandTimeout = 15;
myCommand.CommandType=CommandType.Text;

try
{
myConnection.Open();
myCommand.ExecuteNonQuery();
myConnection.Close();
}
catch(Exception ee)
{
throw ee;
}
MyDataGrid.EditItemIndex = -1;
BindGrid();
}
下面的代码用来更新NorthWind数据库的产品信息,
我们可以使用下面这项技术检索值:
-------------------
bool Discon=((CheckBox)E.Item.FindControl("Discontinued")).Checked;
-------------------
这时我们使用FinControl()方法就能得到Discontinued CheckBox的值.
/// <summary>
///更新记录
/// </summary>
/// <param name="sender"></param>
/// <param name="E"></param>
protec

网学推荐

免费论文

原创论文

设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号