使用DataList控件的编辑模板

数据控件系列之DataList项目编辑篇 DataList允许用户编辑控中的单个项,而GridView、DetailsView和FormView等 数据控件可与数据源控件交互,从而支持自动编辑功能。但DataList不能自动利用数 据源控件的这些功能,如果要使DataList具有这些功能必须编写相应代码。下面我们 以促使DataLIst具备编辑功能为例来阐述代码编写。 第一步:在<temTemplate></ItemTemplate>中设置按钮控件。 说明:将按钮CommandName设置为"Edi... 阅读详情
 
前台:
 
<%@ Page language="c#" Inherits="CommonFunction.DataListEditItem" CodeFile="DataListEditItem.aspx.cs" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>DataListEditItem</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<h2>使用DataList控件的编辑模板</h2>
<asp:DataList id="dlEditItem" style="Z-INDEX: 101; LEFT: 16px; POSITION: absolute; TOP: 48px"
runat="server" Height="136px" DataKeyField="EmployeeID">
<HeaderTemplate>人员信息</HeaderTemplate>             /*头模板*/
<FooterTemplate><hr color="red"></FooterTemplate>     /*底部模板*/
<ItemTemplate>
<asp:Button id="edit" CommandName="edit" Text="编辑" Runat="server"></asp:Button>
<%#DataBinder.Eval(Container.DataItem,"LastName")%><%#DataBinder.Eval(Container.DataItem,"FirstName")%>
</ItemTemplate>
<EditItemTemplate>
<asp:Label id="lastname" Runat="server">
<%#DataBinder.Eval(Container.DataItem,"LastName")%>
</asp:Label>
<asp:Label id="FirstName" Runat="server">
<%#DataBinder.Eval(Container.DataItem,"FirstName")%>
</asp:Label>
<asp:TextBox id=Title runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"Title")%>'>
</asp:TextBox>
<asp:TextBox id=titleOfCourtesy runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"TitleOfCourtesy")%>'>
</asp:TextBox>
<asp:Button id="update" CommandName="update" Text="更新" Runat="server"></asp:Button>
<asp:Button id="cancel" CommandName="cancel" Text="取消" Runat="server"></asp:Button>
</EditItemTemplate>
</asp:DataList>
</form>
</body>
</HTML>
 
效果图:
 
 
 
 
后台:
 
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Configuration;
namespace CommonFunction
{
///<summary>
/// DataListEditItem 的摘要说明。
///</summary>
public partial class DataListEditItem : System.Web.UI.Page
{
 
protected void Page_Load(object sender, System.EventArgs e)
{
//页面初试化时进行数据绑定
if(!IsPostBack)
DataListDataBind();
}
 
private void DataListDataBind()
{
//定义数据连接对象,其中数据库连接字符串是在Web.Config文件中定义的
SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionSqlServer"].ToString());
//创建数据适配器对象
SqlDataAdapter da = new SqlDataAdapter("select EmployeeID,LastName,FirstName,Title,TitleOfCourtesy from Employees",conn);
//创建DataSet对象
DataSet ds = new DataSet();
try
{
//填充数据集
da.Fill(ds,"testTable");
//进行数据绑定
dlEditItem.DataSource = ds.Tables["testTable"];
dlEditItem.DataBind();
}
catch(Exception error)
{
//输出异常信息
Response.Write(error.ToString());
}
}
 
 
 
private void dlEditItem_CancelCommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e)
{
//设置DataList控件的编辑项的索引为-1,既取消编辑
dlEditItem.EditItemIndex = -1;
//数据绑定
DataListDataBind();
}
 
private void dlEditItem_EditCommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e)
{
//设置DataList控件的编辑项的索引为选择的当前项
dlEditItem.EditItemIndex = e.Item.ItemIndex;
//数据绑定
DataListDataBind();
}
 
private void dlEditItem_UpdateCommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e)
{
//取得编辑行的关键字段的值
int empID = (int)dlEditItem.DataKeys[e.Item.ItemIndex];
//取得文本框中输入的内容
TextBox newTitle = (TextBox)e.Item.FindControl("Title");
TextBox newTitleOfCour = (TextBox)e.Item.FindControl("TitleOfCourtesy");
//定义SQL语句
string sqlCom = "update Employees set Title='"+newTitle.Text+"',TitleOfCourtesy='"+newTitleOfCour.Text+"' where EmployeeID="+empID.ToString();
//定义数据连接对象,其中数据库连接字符串是在Web.Config文件中定义的
SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionSqlServer"].ToString());
//定义命令对象
SqlCommand cmd = new SqlCommand(sqlCom,conn);
//打开数据连接
conn.Open();
try
{
//执行SQL命令
cmd.ExecuteNonQuery();
//取消编辑
dlEditItem.EditItemIndex = -1;
DataListDataBind();
}
catch(Exception err)
{
//输入异常信息
Response.Write(err.ToString());
}
finally
{
//关闭连接对象
conn.Close();
}
}
}
}
 
 
【ASP.NET】第九课——使用DataList控件和Repeater控件绑定数据 GridView 和 DetailsView 控件一般合作使用,实 现“列表/详细”功能。DetailsView 控件和 GridView 控件有很多相似之处,但是 DetailsView 控件有添加数据的功能,而 GridView 没有。 阅读详情

相关推荐

一文讲清CAN和CANFD的区别

本文将从技术原理、协议特性到应用场景,深度解析两者的核心差异。

文章主要涉及嵌入式软件开发、测试、项目管理等,欢迎交流,共同进步。 3212

模板数据数据列表DataList模板之实例

本篇文章朋友在深圳游玩的时候突然想到的...近期就有想写几篇关于模板数据的文章,所以回家到之后就奋笔疾书的写出来发布了     1,数据列表DataList与重复列表Repeator很类似,但是DataList应用更广泛,因为他可以选择和修改数据项的内容。     DataList的数据显示和布局与Repeator控件一样都是通过“模板”控制的。     (注:模板最少要定义一个“数据项模板...

weixin_34408717的博客 376

Coze智能体网页集成实战:从零搭建免登录AI助手

本文详细介绍了如何利用Coze Chat SDK从零开始为网站集成免登录AI助手。通过获取访问令牌和智能体ID,仅需几行JavaScript代码即可将功能完整的对话窗口嵌入网页,实现开箱即用的智能交互。文章重点讲解了核心部署步骤、会话隔离方案以及UI深度定制方法,帮助开发者快速打造贴合品牌、提升用户体验的网页AI助手。

gold8的专栏 558

DataList控件详细用法(一)

使用DataList控件  本章内容:         1、理解事件冒泡         2、使用模板         3、在DataList中显示数据         4、在DataList中创建多列         5、捕获DataList控件中产生的事件         6、选择DataList中的项         7、使用DataList控件中的DataKey

平凡酿就非凡 3万+

“Agent Harness”和“Harness Engineering”

摘要:2026年AI工程化领域,"Agent Harness"(AI代理运行控制系统)与"Harness Engineering"(马具工程方法论)常被混淆。前者是管理AI代理非推理事务的技术实体(工具调用、记忆管理、安全约束等7层架构),后者是设计优化该系统的工程学科。研究表明,优化的Harness设计可使同一模型性能提升10倍。两者关系如同"马具"与"制具工艺":Harness Engineering指导Agent Harn

几十年资深高级架构师,技术专家的技术笔记。专注C、Java、Python、微服务、云原生、AI工程化及高并发系统分布式架构实战,分享源码剖析、性能调优与架构治理经验。 846

SRAM vs RRAM:存算一体芯片选型指南(含最新技术对比)

本文深入对比了SRAM与RRAM在存算一体芯片设计中的核心差异,为硬件工程师和架构师提供实战选型指南。文章从技术本质、性能、功耗、成本及设计风险等多维度剖析,指出SRAM基于成熟CMOS工艺,适合高精度、低延迟场景;而RRAM凭借非易失性和高密度潜力,在超低功耗、固定模型应用中优势明显。决策需综合项目预算、上市时间及技术储备。

e4f5g6h的博客 941

ASP.NET中DataList控件

DataList控件 DataList控件可用于创建模板化的列表数据,可以显示诸如一行中有多列的内容,可用于任何重复结构中的数据,如表格。1、DataList控件的模板AlternatingItemTemplate为每一个间隔项提供内容和布局。如果没有定义,在DataList中将为每一项使用ItemTemplate;EditItemTemplate为当前正在编辑的项提供内容和布局。如果没有定义

asp.net 3217

告别环境配置烦恼:Docker容器化一站式搭建Zephyr RTOS开发环境

本文详细介绍了如何使用Docker容器化技术一站式搭建Zephyr RTOS开发环境,彻底解决环境配置不一致、依赖冲突等难题。通过预构建镜像、数据卷挂载和实战编译示例,帮助开发者快速获得隔离、一致且可复现的嵌入式开发环境,大幅提升开发效率和团队协作体验。

n8m7b6v5c4的博客 189

ASP.net datalist,gridview 编辑模板里面控件的使用;

datalist:dropdownlist int sum=0;     foreach (DataListItem item in DataList1.Items)     {         DropDownList   ddl1   =   (DropDownList)item.FindControl("DropDownList1");         sum   +=   Con

wangliqiang1014的专栏 764

VINS-Fusion实战:从零搭建无人机视觉惯性导航系统(附ROS配置指南)

本文提供了一份详尽的VINS-Fusion实战指南,涵盖从硬件选型、传感器标定到ROS节点配置与参数调优的全过程。重点解析了如何将VINS-Fusion视觉惯性里程计系统与PX4飞控深度集成,并实现室外GPS融合,旨在帮助开发者从零搭建稳定、高精度的无人机视觉惯性导航系统。

lll78的博客 865

【FPGA教程案例96】控制案例1——基于FPGA的自适应PID控制器verilog实现

首先,我们复习下课程传统的PID控制器,往往存在调整速度较慢,超调过大等缺点。为了解决这个问题,在实际的PID应用中,需要实时的调整PID的控制参数,以达到加快PID控制速度,降低超调等目标。目前,自适应PID控制器,一般有误差反馈调整,模糊控制器调整,神经网络调整。其中模糊控制器调整,神经网络调整较为复杂,在入门案例中不做介绍,在本课程中,我们将实现相对略微简单点的基于误差反馈调整的自适应PID控制器。

FPGA/MATLAB学习教程/源码/项目合作开发 6204

datalist的使用

使用DataList控件  本章内容:         1、理解事件冒泡         2、使用模板         3、在DataList中显示数据         4、在DataList中创建多列         5、捕获DataList控件中产生的事件         6、选择DataList中的项         7、使用DataList控件中的DataKey

wenle006的专栏 686

GEE APP:基于Sentinel-1 SAR数据的洪水检测与制图系统:利用GEE平台实现洪涝区域提取、面积统计及矢量栅格化导出

本文介绍了一个基于Google Earth Engine平台的Sentinel-1 SAR洪水监测应用,通过自动化流程实现洪水淹没区域的精准检测与分析。系统采用Refined Lee滤波降噪和Otsu自适应阈值算法,结合SRTM地形数据消除干扰,可自动计算淹没面积并生成可视化结果。该工具提供用户友好的交互界面,支持多格式数据导出,适用于灾害应急响应、环境监测和城市规划等领域,具有云平台处理、算法鲁棒性强和操作简便等技术优势。

此星光明博客 327

ASP.NET DataList控件的了解与使用

ASP.NET DataList控件的了解与使用DataList控件概述使用DataList绑定数据源设计DataList控件模板 DataList控件概述 看了些帖子,有说到和Repeater控件类似,博主刚接触ASP.NET没多久,先学了DataList,还没接触过Repeater控件,就记录下所学所得。 DataList控件可以使用模板及定义样式来显示数据,并且还能对数据进行选择、删除及编辑...

victorzhangwt的博客 3205

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

关于何种情况下使用DataGrid、DataList或Repeater的一些讨论(3) ambushaa [翻译] [转]

[DataList控件]   如前所述,DataGrid使用表格来显示数据。你也许需要更进一步地控制数据的显示。例如,你想使数据在表格中显示,但不是每行只有一条记录,而是多条。又或者,你并不想使用表格来显示数据,而是只将它们显示在一系列<span>标签中。   DataList放弃了DataGrid中列表显示数据的概念,而是使用事先定义好的模板(Template)来定制显示。通过使用...

leo 107

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

DataList控件的使用

使用DataList控件 本章内容:Ø 1、理解事件冒泡Ø 2、使用模板Ø 3、在DataList中显示数据Ø 4、在DataList中创建多列Ø 5、捕获DataList控件中产生的事件Ø 6、选择DataList中的项Ø 7、使用DataList控件中的DataKeys集合Ø 8、编辑DataList中的项本章介绍在ASP.NET框架中功能最强大的两个控件(DataList控件和Da...

668

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

[转]DataList编辑,更新,删除及模板的使用_se7en3_新浪博客

DataList 提供相关的编辑模板,但和DataGrid不一样的是,DataList没有编辑按钮。要在DataList中使用编辑功能,可在项模板中增加一个按钮,Linkbutton和Button都可以。在CommandName中设置为Edit就可以把此按钮和DataList的编辑事件联系起来了。 如: 编辑按钮可以使用 CommandName="Edit"更新按钮可以使用Command...

stoco的专栏 156

Datalist控件的详细用法(一)

使用DataList控件   本章内容:          1、理解事件冒泡          2、使用模板          3、在DataList中显示数据          4、在DataList中创建多列          5、捕获DataList控件中产生的事件          6、选择DataList中的项          7、使用DataList控件中的DataKe

一览众山小 1万+

数据列表DataList模板之实例

1,数据列表DataList与重复列表Repeator很类似,但是DataList应用更广泛,因为他可以选择和修改数据项的内容。 DataList的数据显示和布局与Repeator控件一样都是通过“模板”控制的。 (注:模板至少要定义一个“数据项模板”(ItemTemplate)来指定显示布局)   2,DataList支持的模板类型: 模板 名称

葵歌小妖 6636

数据绑定控件之DataList

上篇博客讨论了Repeater控件的基本用法,它是最基本的数据绑定控件,只提供了数据绑定的功能,熟练运用Repeater控件后,其它类似的数据绑定控件就很简单了。接着我们上篇博客的内容继续,今天来讨论下DataList的基本使用方法。 一、绑定控件之DataList        该控件可以以自定义的格式显示各种数据源的字段,其显示数据的格式在创建的模板中定义,可以为项、交替项、选

xyjikl 2912

使用DataList控件

使用DataList控件 本章内容:Ø 1、理解事件冒泡Ø 2、使用模板Ø 3、在DataList中显示数据Ø 4、在DataList中创建多列Ø 5、捕获DataList控件中产生的事件Ø 6、选择DataList中的项Ø 7、使用DataList控件中的DataKeys集合Ø 8、编辑DataList中的项本章介绍在ASP.NET框架中功能最强大的两个控件(DataList控件和DataG

高山的追梦博客 493

ASP.NET中DataList控件模板属性说明及各功能实现效果介绍

[size=large]在用ASP.NET做网站开发过程中,DataList这个控件必不可少会用到一个,下面介绍下: DataList控件可用于创建模板化的列表数据,可以显示诸如一行中有多列的内容,可用于任何重复结构中的数据,如表格。 1、DataList控件的模板 AlternatingItemTemplate为每一个间隔项提供内容和布局。如果没有定义,在DataList中将为每一项使用I...

sgj_4732514的专栏 1558
上一篇: 全半角转换
下一篇: 如何在DataGrid控件中添加CheckBox控件列
Love1221
博客等级 码龄20年 7粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值