ASP.NET基础教程-DataList数据列表控件-实现DataList列表控件编辑功能
2007-10-12 11:08
459 查看
HTML文件代码
<asp:datalist id="DataList" style="Z-INDEX: 108; LEFT: 26px; POSITION: absolute; TOP: 264px" runat="server" DataKeyField="id">
<ItemTemplate>
<asp:Button id="edit" runat="server" Text="编辑" CommandName="edit"></asp:Button>
<asp:Label id="id" Text=
'<%# DataBinder.Eval(Container.DataItem,"ID") %>' Runat="server"> </asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id="name" Text=
'<%# DataBinder.Eval(Container.DataItem,"name") %>' Runat="server"></asp:TextBox>
<asp:TextBox id="level" Text=
'<%# DataBinder.Eval(Container.DataItem,"level") %>' Runat="server"></asp:TextBox>
<asp:TextBox id="station" Text=
'<%# DataBinder.Eval(Container.DataItem,"station") %>' Runat="server"></asp:TextBox>
<asp:TextBox id="dept" Text=
'<%# DataBinder.Eval(Container.DataItem,"dept") %>' Runat="server"></asp:TextBox>
<asp:Button id="update" runat="server" Text="更新" CommandName="update"></asp:Button>
<asp:Button id="cancel" runat="server" Text="取消" CommandName="cancel"></asp:Button>
</EditItemTemplate>
</asp:datalist>
CS文件代码
1、读取数据按钮代码
private void select_data_Click(object sender, System.EventArgs e)
{
//创建数据库连接
SqlConnection con=new SqlConnection(ConfigurationSettings.AppSettings["server"]);
//打开数据库
con.Open();
创建数据适配器对象从数据库中提取数据
SqlDataAdapter da=new SqlDataAdapter("select id,name,level,station,dept from verify",con);
//声明记录集对象
ds=new DataSet();
//将数据库中提取出的数据加载到数据库
da.Fill(ds,"verify");
//将记录集作为数据列表的数据源
DataList.DataSource=ds;
//绑定数据
DataList.DataBind();
//关闭数据库
con.Close();
}
2、编辑按钮代码
private void DataList_EditCommand(object source,System.Web.UI.WebControls.DataListCommandEventArgs e)
{
if(e.CommandName=="edit")
{
//设置DataList控件的编辑项的索引为当前选择行的索引
DataList.EditItemIndex=e.Item.ItemIndex;
DataList.DataSource=ds;//重新赋数据源
DataList.DataBind();//数据绑定
}
}
3、取消按钮代码
private void DataList_CancelCommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e)
{
if(e.CommandName=="cancel")
{
//设置DataList控件的编辑项的索引为-1,取消编辑
DataList.EditItemIndex=-1;
DataList.DataSource=ds;//重新赋数据源
DataList.DataBind();//数据绑定
}
}
4、更新按钮代码
private void DataList_UpdateCommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e)
{
if(e.CommandName=="update")
{
//打开数据库连接
con.Open();
//获得编辑行的ID字段的值
string old_id=DataList.DataKeys[e.Item.ItemIndex].ToString();
//取得文本框内输入的姓名
string new_name=(TextBox)e.Item.FindControl("name").Text;
//取得文本框内输入的等级
string new_level=(TextBox)e.Item.FindControl("level") .Text;
//取得文本框内输入的岗位
string new_station=(TextBox)e.Item.FindControl("station") .Text;
//取得文本框内输入的部门
string new_dept=(TextBox)e.Item.FindControl("dept") .Text;
//更新数据所需SQL语句
string oSql="update verify set name='"+new_name+"',level='"+new_level+"',station='"+new_station+"',dept='"+new_dept+"' where id='"+old_id+"'";
try
{
//定义命令对象
SqlCommand cmd=new SqlCommand(oSql,con);
//执行SQL命令
cmd.ExecuteNonQuery();
//取消编辑
DataList.EditItemIndex=-1;
ds.Tables["verify"].Rows[e.Item.ItemIndex][1]=new_name.Text.ToString();
ds.Tables["verify"].Rows[e.Item.ItemIndex][2]=new_level.Text.ToString();
ds.Tables["verify"].Rows[e.Item.ItemIndex][3]=new_station.Text.ToString();
ds.Tables["verify"].Rows[e.Item.ItemIndex][4]=new_dept.Text.ToString();
//将ds作为DataList控件的数据源
DataList.DataSource=ds;
//绑定数据
DataList.DataBind();
}
catch(Exception err)
{
//如果更新出现异常,在页面输出异常信息
Response.Write(err.ToString());
}
finally
{
//不论有无异常,都关闭数据源
con.Close();
}
}
}
相关文章推荐
- ASP.NET中运用DataList控件来实现编辑、更新、删除、取消等功能
- ASP.NET基础教程-DataList数据列表控件-利用DataReader对象作为DataList对象的数据源
- ASP.NET基础教程-DataList数据列表控件-选择DataList列表中的一行显示明细信息
- andriod———1.实现原生登录注册。 2.首页完成商品列表展示点击相对应的商品ID进入商品详情 3.商品详情页面展示数据,点击加入购物车进入购物车页面 4.购物车页面完成购物车编辑,删除,功能
- 使用PagedDataSource类实现DataList和Repeater控件的分页显示功能
- 使用PagedDataSource类实现DataList和Repeater控件的分页显示功能
- 列表控件排序功能的实现
- (DevExpress2011控件教程)ASPxGridView 范例4 :ASPxGridView 行选择、多表头设计、数据导出、主表细表等功能实现
- Repeater\DataList\GridView实现分页,数据编辑与删除
- jquery+ajaxform+springboot控件实现数据更新功能
- datalist控件用按钮或checkbox实现的全选功能
- MVVM范例:实现 用户列表绑定、编辑 、删除、添加及筛选功能
- Java实现的自定义可编辑表格控件(支持汇总、滚动、增行、删行、小数、日期、下拉列表、参照等)
- 使用DataList实现 加入购物车,编辑,删除,更新,取消功能。要求连一个产品表。
- 使用PagedDataSource类实现DataList和Repeater控件的分页显示功能
- 实现ListCtrl控件中 数据项可编辑功能
- 图形的绘制,如何使用自定义画笔(颜色,线宽,线形)。如何为程序中添加选项菜单和选项设置对话框,如何使用标准颜色对话框,如何使用字体对话框,在选项对话框中实现预览功能。实现选项对话框和窗口类中的数据交换。如何改变对话框和控件的背景色,如何改变控件的文本颜色,
- DevExpress.LookUpEdit控件实现自动搜索定位功能 兼使用方法(looUpEdit可编辑)
- Datalist控件实现分页功能
- 【原创】有关Silverlight控件DataGrid的绑定数据后单元格单独复制的功能实现分析