DataList控件可以使用模板与定义样式来显示数据并进行数据的选择, 删除及编辑工作. DataList控件的最大特点是一定要通过模板来定义数据的显示格式. 如果要设计出美观的界面, 就需要花费一番心思. DataList控件显示数据时具有灵活性, 开发人员发挥的空间较大, DataList支持的模板如下:

AlternationItemTemplate

如果已经定义, 则为DataList中的交替项提供内容和布局; 如果未定义, 则使用ItemTemplate

EditItemTemplate

如果已经定义, 则为DataList中的当前编辑项提供内容和布局; 如果未定义则使用ItemTemplate

FooterTemplate

如果已经定义, 则为DataList的脚注部分提供内容和布局; 如果未定义则不显示脚注部分

HeaderTemplate

如果已经定义, 则为DataList的页眉部分提供内容和布局; 如果未定义则不显示页眉部分

ItemTemplate

为DataList中的项提供内容和布局所要求的模板

SelectdItemTemplate

如果已经定义, 则为DataList中的当前选定项提供内容和布局; 如果未定义则使用ItemTemplate

SeparatorTemplate

如果已经定义, 则为DataList中的分隔符提供内容和布局; 如果未定义则不显示分隔符

下面是关于dataList控件的前端代码简单示例:

<asp:DataList ID="DataList1" runat="server" Width="239px">
<FooterTemplate>
<table border="1" style="width: 300px; text-align: center;" cellpadding="0" cellspacing="0">
<tr>
<td colspan="4" style="font-size: 16pt; color: #006600; text-align: center">
下面这行是合计</td>
</tr>
<tr>
<td style="height: 19px; width: 50px; color: #669900;">
编号合计</td>
<td style="height: 19px; width: 50px; color: #669900;">
姓名合计</td>
<td style="height: 19px; width: 50px; color: #669900;">
性别合计</td>
<td style="width: 150px; height: 19px; color: #669900;">
内号码合计</td>
</tr>
</table>
</FooterTemplate>
<HeaderTemplate>
<table border="1" style="width: 300px; text-align: center;" cellpadding="0" cellspacing="0">
<tr>
<td colspan="4" style="font-size: 16pt; color: #006600; text-align: center">
使用DataList控件绑定数据源</td>
</tr>
<tr>
<td style="height: 19px; width: 50px; color: #669900;">
编号</td>
<td style="height: 19px; width: 50px; color: #669900;">
姓名</td>
<td style="height: 19px; width: 50px; color: #669900;">
性别</td>
<td style="width: 150px; height: 19px; color: #669900;">
内号码</td>
</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<table border="1" style="width: 300px; color: #000000; text-align: center;" cellpadding="0" cellspacing="0">
<tr>
<td style="height: 21px; width: 50px; color: #669900;">
<asp:Label ID="lblStuID" runat="server" Text='<%# Eval("cardNo") %>'></asp:Label></td>
<td style="height: 21px; width: 50px; color: #669900;">
<asp:Label ID="lblStuName" runat="server" Text='<%# Eval("name") %>'></asp:Label></td>
<td style="height: 21px; width: 50px; color: #669900;">
<asp:Label ID="lblStuSex" runat="server" Text='<%# Eval("sex") %>'></asp:Label></td>
<td style="width: 150px; height: 21px; color: #669900;">
<asp:Label ID="lblstuHobby" runat="server" Text='<%# Eval("cardBound") %>'></asp:Label></td> </tr>
</table>
</ItemTemplate>
</asp:DataList>

对应的后台代码:

 protected void Page_Load(object sender, EventArgs e)

     {

         if (!IsPostBack)

         {

             //实例化SqlConnection对象

             SqlConnection sqlCon = new SqlConnection();

             //实例化SqlConnection对象连接数据库的字符串

             sqlCon.ConnectionString = "server=.;uid=sa;pwd=123.456;database=TYW";

             //定义SQL语句

             string SqlStr = "select * from card";

             //实例化SqlDataAdapter对象

             SqlDataAdapter da = new SqlDataAdapter(SqlStr, sqlCon);

             //实例化数据集DataSet

             DataSet ds = new DataSet();

             da.Fill(ds, "card");

             //绑定DataList控件

             DataList1.DataSource = ds;//设置数据源,用于填充控件中的项的值列表

             DataList1.DataBind();//将控件及其所有子控件绑定到指定的数据源

         }

     }

对应的显示效果图:

DataList一些基本的事件使用简单示例:

 public SqlConnection GetCon()

     {

         //实例化SqlConnection对象

         SqlConnection sqlCon = new SqlConnection();

         //实例化SqlConnection对象连接数据库的字符串

         sqlCon.ConnectionString = "server=.;uid=sa;pwd=123.456;database=TYW";

         return sqlCon;

     }

     public void Bind()

     {

         SqlConnection sqlCon = GetCon();

         //定义SQL语句

         string SqlStr = "select * from card";

         //实例化SqlDataAdapter对象

         SqlDataAdapter da = new SqlDataAdapter(SqlStr, sqlCon);

         //实例化数据集DataSet

         DataSet ds = new DataSet();

         da.Fill(ds, "card");

         //绑定DataList控件

         DataList1.DataSource = ds;//设置数据源,用于填充控件中的项的值列表

         DataList1.DataKeyField = "cardNo";//设置数据表的主键

         DataList1.DataBind();//将控件及其所有子控件绑定到指定的数据源

     }

     protected void DataList1_EditCommand(object source, DataListCommandEventArgs e)

     {

         //设置DataList1控件的编辑项的索引为选择的当前索引

         DataList1.EditItemIndex = e.Item.ItemIndex;

         //数据绑定

         Bind();

     }

     protected void DataList1_CancelCommand(object source, DataListCommandEventArgs e)

     {

         //设置DataList1控件的编辑项的索引为-1,即取消编辑

         DataList1.EditItemIndex = -;

         //数据绑定

         Bind();

     }

     protected void DataList1_UpdateCommand(object source, DataListCommandEventArgs e)

     {

         //取得编辑行的关键字段的值

         string stuID = DataList1.DataKeys[e.Item.ItemIndex].ToString();

         //取得文本框中输入的内容

         string stuName = ((TextBox)e.Item.FindControl("txtName")).Text;

         string stuSex = ((TextBox)e.Item.FindControl("txtSex")).Text;

         string stuHobby = ((TextBox)e.Item.FindControl("txtHobby")).Text;

         string sqlStr = "update card set name='" + stuName + "',sex='" + stuSex + "',cardBound='" + stuHobby + "' where cardNo=" + stuID;

         //更新数据库

         SqlConnection myConn = GetCon();

         myConn.Open();

         SqlCommand myCmd = new SqlCommand(sqlStr, myConn);

         myCmd.ExecuteNonQuery();

         myCmd.Dispose();

         myConn.Close();

         //取消编辑状态

         DataList1.EditItemIndex = -;

         Bind();

     }

028. asp.net数据绑定控件值DataList控件的更多相关文章

  1. 《ASP.NET1200例》嵌套在DataLisT控件中的其他服务器控件---DropDownList控件的数据绑定

    aspx <script type="text/javascript"> function CheckAll(Obj) { var AllObj = document. ...

  2. 027. asp.net中数据绑定控件之 GridView控件

    GridView控件支持下面的功能: 绑定至数据源控件, 如SqlDataSource 内置排序功能 内置更新和删除功能 内置分页功能 内置行选择功能 可以编程方式访问GridView对象模型以动态设 ...

  3. asp.net学习之DataList控件

    asp.net学习之DataList控件   DataList控件与Repeater控件一样由模板驱动,与Repeater控件不同的是: DataList控件默认输出是一个HTML表格.DataLis ...

  4. ASP.NET数据绑定控件简介

    •数据绑定分为数据源和数据绑定控件两部分(①数据绑定控件通过数据源获取和修改数据②数据绑定控件通过数据源隔离数据提供者和数据使用者)数据绑定控件→数据源→数据库•数据源:SqlDataSource(连 ...

  5. asp.net学习之 数据绑定控件--表格绑定控件

    原文:asp.net学习之 数据绑定控件--表格绑定控件     数据绑定 Web 服务器控件是指可绑定到数据源控件,以实现在 Web 应用程序中轻松显示和修改数据的控件.数据绑定 Web 服务器控件 ...

  6. asp.net取HTML控件值

    asp.net取HTML控件值所有html表单里面的值控件,提交后都是以键值 key=value&key=value&……这样的形式提交给后台. radio也一样,会将选中的radio ...

  7. WPFS数据绑定(要是后台类对象的属性值发生改变,通知在“client界面与之绑定的控件值”也发生改变须要实现INotitypropertyChanged接口)

    WPFS数据绑定(要是后台类对象的属性值发生改变,通知在"client界面与之绑定的控件值"也发生改变须要实现INotitypropertyChanged接口) MainWindo ...

  8. ASP.NET MVC加载用户控件后并获取其内控件值或赋值

    有网友看了这篇<ASP.NET MVC加载ASCX之后,并为之赋值>http://www.cnblogs.com/insus/p/3643254.html 之后,问及Insus.NET,不 ...

  9. C# 将Dictionary,StringDictionary等集合数据绑定到如comboBox等控件数据源中将获取健值

    一般在使用C#提供的如combobx控件绑定数据源时都是直接绑定数据库里的数据的(DataTable,DataSet等) 最近在一个项目里需要使用combobox绑定类似“状态的”数据源,该字段里的数 ...

随机推荐

  1. 2016- 1- 16 NSThread 的学习

    一:NSThread的概念: 二:NSThread的使用: 1.创建一个Thread 1.1第一种方法: - (void)test1{ NSString *str = @"zhengli&q ...

  2. Nginx 安装编译配置

    ./configure --prefix=/usr/local/nginx-1.8.0 --with-http_ssl_module --with-http_spdy_module --with-ht ...

  3. ios 从网络上获取图片并在UIImageView中显示

    ios 从网络上获取图片   -(UIImage *) getImageFromURL:(NSString *)fileURL { NSLog(@"执行图片下载函数"); UIIm ...

  4. N个元素组成二叉树的种类

    <算法>中的二叉查找树一节的一道习题. N个元素组成的二叉树固定一个根节点,这个根节点的左右子树组合数为(0,n-1),(1,n-2),(2,n-3)...(n-1,0),假设N个元素组成 ...

  5. Some SQL basics

    1, Index An index is a set of data pointers stored on disk associated with a single table. The main ...

  6. 【LeetCode】Best Time to Buy and Sell Stock IV

    Best Time to Buy and Sell Stock IV Say you have an array for which the ith element is the price of a ...

  7. [转]BEHAVOUR TREE2

    上次提到了一些行为树的基本概念,包括行为节点,控制节点(选择,序列,并行),这次来更多,更深入的讨论行为树的一些东西,如果对行为树不是很了解,请参看这里. 一. 关于选择节点的讨论 我们说过选择节点的 ...

  8. Oracle PL/SQL高级应用 视图 同义词 序列

    视图: 视图叫虚表,即是在哪个表上建立的视图,将那个表的数据用一条查询sql语句查出的数据展现在该视图中,对这个视图操作就是只能对该视图中的数据进行操作,该操作也会保存在建立的表中.可以理解为表上表, ...

  9. 硬盘缓存的最佳方案,DiskLruCache完全解析

    收藏自:http://blog.csdn.net/guolin_blog/article/details/28863651

  10. 在FreeBSD上安装Bugzilla

    Bugzilla 是一款开源的 Web 应用,是一款bug跟踪系统和测试工具,由 mozilla 开发,并采用 Mozilla 公共许可证授权(MPL),它经常被一些高科技公司如 mozilla.红帽 ...