DataList控件的选择模板,REPEATER控件的模板
数据服务控件(CSJ_0808)
1使用REPEATER控件显示数据
RepeaterBind.DataSource = ds.Tables["testTable"];
RepeaterBind.DataBind();
-----------------------------
<asp:Repeater id="RepeaterBind" runat="server">
<ItemTemplate>
<li>
<%#DataBinder.Eval(Container.DataItem,"TitleOfCourtesy")%>
<%#DataBinder.Eval(Container.DataItem,"LastName")%>
<%#DataBinder.Eval(Container.DataItem,"FirstName")%>
</li>
</ItemTemplate>
</asp:Repeater>
--------------------------------------------------------------------------------
2 使用REPEATER控件的模板
<asp:Repeater id="RepeaterTem" runat="server">
<HeaderTemplate>
<h3>页眉模板--人员信息</h3>
<table>
</HeaderTemplate>
<ItemTemplate>
<font color="blue">
<%#DataBinder.Eval(Container.DataItem,"TitleOfCourtesy")%>
<%#DataBinder.Eval(Container.DataItem,"LastName")%>
<%#DataBinder.Eval(Container.DataItem,"FirstName")%>
</font>
</ItemTemplate>
<AlternatingItemTemplate>
<font color="red">
<%#DataBinder.Eval(Container.DataItem,"TitleOfCourtesy")%>
<%#DataBinder.Eval(Container.DataItem,"LastName")%>
<%#DataBinder.Eval(Container.DataItem,"FirstName")%>
</font>
</AlternatingItemTemplate>
<SeparatorTemplate>
<hr color="#green" width="100%">
</SeparatorTemplate>
<FooterTemplate>
</TABLE>
<h3>页脚模板--显示结束</h3>
</FooterTemplate>
</asp:Repeater>
---------------------------------------------------------
3 //判断是否具有页面跳转的请求
if (Request.QueryString["Page"] != null)
CurPage=Convert.ToInt32(Request.QueryString["Page"]);
else
CurPage=1;
----------------------------------------------------------
4 使用DataList控件绑定数据
//定义数据连接对象,其中数据库连接字符串是在Web.Config文件中定义的
SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionSqlServer"].ToString());
//创建数据适配器对象
SqlDataAdapter da = new SqlDataAdapter("select LastName,FirstName,TitleOfCourtesy from Employees",conn);
//创建DataSet对象
DataSet ds = new DataSet();
//填充数据集
da.Fill(ds,"testTable");
//进行数据绑定
dluse.DataSource = ds.Tables["testTable"];
dluse.DataBind();
-------------------------------------------------------------
5 使用DataList控件的选择模板
dlselItem.DataSource = ds.Tables["testTable"];
dlselItem.DataBind();
----------------------------------------------------
<asp:DataList id="dlselItem" style="Z-INDEX: 101; LEFT: 16px; POSITION: absolute; TOP: 48px" runat="server"
Height="136px">
<HeaderTemplate>
人员信息
</HeaderTemplate>
<SelectedItemTemplate>
姓名:<%#DataBinder.Eval(Container.DataItem,"LastName")%><BR>
姓:<%#DataBinder.Eval(Container.DataItem,"FirstName")%><BR>
标题:<%#DataBinder.Eval(Container.DataItem,"Title")%><BR>
称谓:<%#DataBinder.Eval(Container.DataItem,"TitleOfCourtesy")%><BR>
地址:<%#DataBinder.Eval(Container.DataItem,"Address")%><BR>
城市:<%#DataBinder.Eval(Container.DataItem,"City")%><BR>
</SelectedItemTemplate>
<FooterTemplate>
<hr color="red">
</FooterTemplate>
<ItemTemplate>
<asp:Button id="look" CommandName="select" Text="选择" Runat="server"></asp:Button><%#DataBinder.Eval(Container.DataItem,"LastName")%>
</ItemTemplate>
</asp:DataList>
------------------------------------------------------------
6 使用DataList控件的编辑模板
取消编辑//设置DataList控件的编辑项的索引为-1,既取消编辑
dlEditItem.EditItemIndex = -1;
//数据绑定
DataListDataBind();
编辑项---------------dlEditItem_EditCommand-----------------
dlEditItem.EditItemIndex = e.Item.ItemIndex;
DataListDataBind();
更新项--------------dlEditItem_UpdateCommand--------------
//取得编辑行的关键字段的值
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();
}
----------------------------------------------------------------------
7 在DataList控件中使用样式
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!