ASP.NET中repeater控件用法实例_实用技巧

本文实例讲述了ASP.NET中repeater控件用法。分享给大家供大家参考。具体实现方法如下:

repeater绑定数据:

复制代码 代码如下:

protected void Page_Load(object sender, EventArgs e)
{
        if(!IsPostBack)
            BindStudent();
}

private void BindStudent()
{
        string str = ConfigurationManager.ConnectionStrings["stucnn"].ConnectionString;
        using (SqlConnection sqlCnn = new SqlConnection(str))
        {
            using (SqlDataAdapter da = new SqlDataAdapter("select * from student", sqlCnn))
            {
                DataSet ds = new DataSet();
                da.Fill(ds);
                this.Repeater1.DataSource = ds;
                this.Repeater1.DataBind();
            }
        }
}

删除数据:

复制代码 代码如下:

protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
        if (e.CommandName == "Delete")
        {
            string str = ConfigurationManager.ConnectionStrings["stucnn"].ConnectionString;
            using (SqlConnection sqlCnn = new SqlConnection(str))
            {
                using (SqlCommand sqlCmm = sqlCnn.CreateCommand())
                {
                    sqlCnn.Open();
                    sqlCmm.CommandText = "delete from student where sid="
                        + e.CommandArgument.ToString();
                    sqlCmm.ExecuteNonQuery();
                }
            }
            this.BindStudent();
        }
        else if (e.CommandName == "Edit")
        {
            Server.Transfer("Edit.aspx?sid=" + e.CommandArgument.ToString());
        }
}

前台:

复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <%--<asp:Repeater ID="Repeater1" runat="server">
    <HeaderTemplate>
    <hr />
    </HeaderTemplate>
    <ItemTemplate><div>
    <asp:Label ID="lblSid" runat="server" Text='<%# Eval("sid") %>'></asp:Label>
    <asp:Label ID="lblSname" runat='server' Text='<%# Eval("sname") %>'></asp:Label>
    <asp:Image ID="imgPhoto" runat="server" ImageUrl='<%# Eval("photo") %>' /></div>
    </ItemTemplate>
    <SeparatorTemplate>
    <hr />
    </SeparatorTemplate>
    <AlternatingItemTemplate>
    <div style="
    <asp:Label ID="lblSid" runat="server" Text='<%# Eval("sid") %>'></asp:Label>
    <asp:Label ID="lblSname" runat='server' Text='<%# Eval("sname") %>'></asp:Label>
    <asp:Image ID="imgPhoto" runat="server" ImageUrl='<%# Eval("photo") %>' /></div>
    </AlternatingItemTemplate>
    <FooterTemplate><hr /></FooterTemplate>
    </asp:Repeater>--%>
    <div>

        <asp:Repeater ID="Repeater1" runat="server"
            onitemcommand="Repeater1_ItemCommand">
        <HeaderTemplate><table>
        <tr><td style="width:100px">编号</td><td style="width:100px">姓名</td>
        <td style="width:100px">图片</td><td> </td><td> </td></tr>
        </HeaderTemplate>
        <ItemTemplate>
        <tr>
        <td><%# Eval("sid") %></td><td><%# Eval("sname") %></td>
        <td><img width="60px" height="60px" src='<%# "images/" + Eval("photo") %>' /></td>
        <td><asp:LinkButton ID="btnDelete" runat="server" Text="删除" CommandName='Delete' CommandArgument='<%# Eval("sid") %>'></asp:LinkButton></td>
        <td><asp:LinkButton ID="btnEdit" runat="server" Text="编辑" CommandName='Edit' CommandArgument='<%# Eval("sid") %>'></asp:LinkButton></td>
        </tr>
        </ItemTemplate>
        <AlternatingItemTemplate>
        <tr style="
        <td><%# Eval("sid") %></td><td><%# Eval("sname") %></td>
        <td><img width="60px" height="60px" src='<%# "images/" + Eval("photo") %>' /></td>
        <td><asp:LinkButton ID="btnDelete" runat="server" Text="删除" CommandName='Delete' CommandArgument='<%# Eval("sid") %>'></asp:LinkButton></td>
        <td><asp:LinkButton ID="btnEdit" runat="server" Text="编辑" CommandName='Edit' CommandArgument='<%# Eval("sid") %>'></asp:LinkButton></td>
        </tr>
        </AlternatingItemTemplate>
        <SeparatorTemplate>
        <tr><td colspan="5"><hr /></td></tr>
        </SeparatorTemplate>
        <FooterTemplate></table></FooterTemplate>
        </asp:Repeater>

    </div>
    </form>
</body>
</html>

启用,禁用:

复制代码 代码如下:

protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
        //string status = e.CommandName;
        if ((e.CommandName == "true")||(e.CommandName == "false"))
        {
            string str = ConfigurationManager.ConnectionStrings["stucnn"].ConnectionString;
            using (SqlConnection sqlCnn = new SqlConnection(str))
            {
                using (SqlCommand sqlCmm = sqlCnn.CreateCommand())
                {
                    sqlCnn.Open();
                    sqlCmm.CommandText = "update student set status=@status where sid="
                        + e.CommandArgument.ToString();
                    sqlCmm.Parameters.AddWithValue("@status",e.CommandName);
                    sqlCmm.ExecuteNonQuery();
                }
            }
            this.BindStudent();
        }
}

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Debug="true" Inherits="Default2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Repeater ID="Repeater1" runat="server"
            onitemcommand="Repeater1_ItemCommand">
        <HeaderTemplate><table><tr><th>编号</th><th>姓名</th><th>状态</th><th> </th></tr></HeaderTemplate>
        <ItemTemplate>
        <tr><td><%# Eval("SID") %></td>
        <td><%# Eval("sname") %></td>
        <td><%# Convert.ToBoolean(Eval("status"))?"启用":"禁用" %></td>
        <td><asp:LinkButton ID="btnSetStatus" runat="server" CommandArgument='Eval("sid")' Text='<%# Convert.ToBoolean(Eval("status"))?"禁用":"启用" %>' CommandName='<%# Convert.ToBoolean(Eval("status"))?"false":"true" %>'></asp:LinkButton></td></tr>
        </ItemTemplate>
        <FooterTemplate></table></FooterTemplate>
        </asp:Repeater>
    </div>
    </form>
</body>
</html>

希望本文所述对大家的asp.net程序设计有所帮助。

时间: 2024-12-01 00:06:43

ASP.NET中repeater控件用法实例_实用技巧的相关文章

asp.net中Repeater控件用法笔记

  大家可能都对datagrid比较熟悉,但是如果在数据量大的时候,我们就得考虑使用repeater作为我们的数据绑定控件了.Repeater控件与DataGrid (以及DataList)控件的主要区别是在于如何处理HTML.ASP.NET建立HTML代码以显示DataGrid控件,但Repeater允许开发人员决定如何显示数据.所以,你可以选择将数据显示在一个HTML表格中或者一个顺序列表中.这主要取决于你的选择,但你必须将正确的HTML插入到 ASP.NET页面中. 模板与DataList

浅谈ASP.NET常用数据绑定控件优劣总结_实用技巧

本文的初衷在于对Asp.net常用数据绑定控件进行一个概览性的总结,主要分析各种数据绑定控件各自的优缺点,以便在实际的开发中选用合适的控件进行数据绑定,以提高开发效率. 因为这些数据绑定控件大部分都已经封装的很好了,稍微有一些基础的朋友都可以很容易的上手使用,所以本文不涉及具体控件的使用,只在于分析各自的优劣点,但是在下一篇文章里,我会主要讲一下ListBox.GridView.Repeater这三个数据绑定控件的"高效分页",ListBox和GridView内置的有分页,但是其效率太

根据Eval()函数绑定的值,来显示GridView中的控件的方法_实用技巧

复制代码 代码如下: <asp:TemplateField HeaderText="操作" ShowHeader="False">                                 <ItemTemplate>                                 <asp:LinkButton ID="btn_zhiding" runat="server" Command

ASP.NETWeb服务器验证控件如何使用_实用技巧

什么是验证控件? 希望用户输入正确的类型的数据,为了验证用户输入是否满足要求,必须对输入的值.范围或格式进行检查..NET中验证控件在哪里? 在工具箱的验证分组里.常用的ASP.NET控件几个?分别是什么? 1)CompareValidator控件:与给定值比较. 2)CustomValidator控件:用户自己定制校验逻辑 3)RangeValidator控件:检查控件的值是否在给定的有效范围内. 4)RegularExpressValidator控件:使用正则表达式验证用户输入的数据是否符合

Asp.Net中索引器的用法分析_实用技巧

本文实例分析了Asp.Net中索引器的用法.分享给大家供大家参考.具体如下: 索引器定义类似于属性,但其功能与属性并不相同.索引器提供一种特殊的方法编写get和set访问器.属性可以像访问字段一样访问对象的数据,索引器可以使用户像访问数组一样访问类成员. 一.索引器特性 1.get 访问器返回值.set 访问器分配值. 2.this 关键字用于定义索引器. 3.value 关键字用于定义由 set 索引器分配的值. 4.索引器不必根据整数值进行索引,由您决定如何定义特定的查找机制. 5.索引器可

ASP.NET中Web API的简单实例_实用技巧

一.Web API的路由 1.在Visual Studio中新建MVC4项目,在App_Start目录下有一个WebApiConfig.cs文件,这个文件中就是相应的Web API的路由配置了. 2.Web API 框架默认是基于 Restful 架构模式的,与ASP.NET MVC 有区别的是,它会根据 Http 请求的 HttpMethod(Get.Post.Put.Delete)来在Controller 中查找 Action,规则是:Action 名中是否以Get.Post 开头?Acti

ASP.NET动态添加控件一例_实用技巧

第一次单击页面中有3个Label,第二次单击有6个,第三次单击有9个,也就是每次单击要在上次的状态下再添加3个. 我的方法是,可以通过Session来保存上次的状态,一种解法如下: Test.aspx关键代码: 复制代码 代码如下: <form id="form1" runat="server"> <asp:DropDownList ID="DropDownList1" runat="server">

水晶报表asp.net的webform下基本用法实例_实用技巧

本文实例讲述了水晶报表asp.net的webform下基本用法.分享给大家供大家参考. 具体实现方法如下: 复制代码 代码如下: protected void Page_Init(object sender, EventArgs e) {      ConfigureCrystalReport();  } protected void Page_Unload(object sender, EventArgs e)  {          if (rptDocument == null)     

深入理解Asp.net中DataBinder.Eval的用法总结_实用技巧

<%# Bind("Subject") %> //绑定字段<%# Container.DataItemIndex + 1%> //实现自动编号<%# DataBinder.Eval(Container.DataItem, "[n]") %>通常使用的方法(这三个性能最好)<%# DataBinder.Eval(Container.DataItem, "ColumnName") %><%# Da