Webform(Repeater控件)

一、Repeater控件

有五大模板

ItemTemplate :有多少条数据,执行多少遍      
  AlternatingItemTemplate : 对交替数据项进行格式设置      
 SeparatorTemplate : 对分隔符进行格式设置      
  HeaderTemplate : 对页眉进行格式设置 ,在加载开始执行一遍    
  FooterTemplate : 对页脚进行格式设置,在加载最后执行一遍

1.数据绑定

list<Users> li =new usersData().Select();

Repeater1.DataSource=li;
Repeater1.DataBind();

2.属性扩展和数据访问类构建

并判断年龄是不是大于16岁,大于的话背景色变红(库存预警)

 public string UserName { get; set; }
    public string PassWord { get; set; }
    public string NickName { get; set; }
    public string NickName1
    {
        get
        {
            if (NickName == "")
            {
                return "<无>";
            }
            else
            {
                return NickName;
            }
        }

    }

    public bool Sex { get; set; }
    public string SexStr
    {
        get { return Sex ? "男" : "女"; }
    }

    public DateTime Birthday { get; set; }
    public string BirStr
    {
        get
        {
            return Birthday.ToString("yyyy年MM月dd日");
        }
    }

    public int Age {
        get {
            return DateTime.Now.Year - Birthday.Year;
        }

    }

    public string Red
    {
        get {
            if (Age > 16)
            {
                return "background-color:red;";
            }
            else
            {
                return "";
            }
        }
    }

    public string Nation { get; set; }

User

3.代码

<asp:Repeater ID="Repeater1" runat="server">
            <HeaderTemplate>
                <table id="tb1">
                    <tr id="tr_head">
                        <td>用户名</td>
                        <td>密码</td>
                        <td>昵称</td>
                        <td>性别</td>
                        <td>生日</td>
                        <td>年龄</td>
                        <td>民族</td>
                    </tr>
            </HeaderTemplate>
            <ItemTemplate>
                <tr class="tr_item" style="<%#Eval("Red")%>">
                    <td><%#Eval("Username") %></td>
                    <td><%#Eval("PassWord") %></td>
                    <td><%#Eval("NickName1") %></td>
                    <td><%#Eval("SexStr") %></td>
                    <td><%#Eval("BirStr") %></td>
                    <td><%#Eval("Age") %></td>
                    <td><%#Eval("Nation") %></td>
                </tr>
            </ItemTemplate>
            <FooterTemplate>
                </table>
            </FooterTemplate>
        </asp:Repeater>

项模板中数据显示:<%# Eval("属性名")%>

4.光棒效果,并且保留原有颜色

 <script type="text/javascript">
            var oItems = document.getElementsByClassName("tr_item");
            for (var i = 0; i < oItems.length; i++)
            {
                var oldColor = "";
                oItems[i].onmouseover = function () {
                    oldColor = this.style.backgroundColor;
                    this.style.backgroundColor = "yellow";
                };

                oItems[i].onmouseout = function () {
                    this.style.backgroundColor = oldColor;

                };
            }
</script>

二、webform的三级联动

与winform一样,只不过需把DropDownList的AutoPostBack属性改为True。

*简单日期的编写方法:用是三个DropDownList分别代表年月日,用for循环进行数据绑定,同时并对日进行判断]

 protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            for (int i = DateTime.Now.Year; i >= 1900; i--)
            {
                ListItem li = new ListItem(i.ToString());
                DropDownList2.Items.Add(li);
            }

            for (int i = 1; i <= 12; i++)
            {
                ListItem li = new ListItem(i.ToString());
                DropDownList3.Items.Add(li);
            }

            for (int i = 1; i <= 31; i++)
            {
                int year =Convert.ToInt32( DropDownList2.SelectedValue);
                int mouth = Convert.ToInt32(DropDownList3.SelectedValue);
                if(mouth==1||mouth==3||mouth==5||mouth==7||mouth==8||mouth==10||mouth==12)
                {
                }
                else if (mouth == 4 || mouth == 6 || mouth ==9 || mouth == 11 )
                {
                    if(i==30)
                    {
                        break;
                    }
                }
                else if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
                {
                    if(i==29)
                    {
                        break;
                    }
                }
                else
                {
                    if(i==28)
                    {
                        break;
                    }
                }
                ListItem li = new ListItem(i.ToString());
                DropDownList4.Items.Add(li);
            }
            DropDownList3.SelectedValue = DateTime.Now.Month.ToString();
            DropDownList4.SelectedValue = DateTime.Now.Day.ToString();
        }

        DropDownList2.SelectedIndexChanged += DropDownList2_SelectedIndexChanged;
        DropDownList3.SelectedIndexChanged += DropDownList3_SelectedIndexChanged;

    }
 void DropDownList3_SelectedIndexChanged(object sender, EventArgs e)
    {
        DropDownList4.Items.Clear();
        for (int i = 1; i <= 31; i++)
        {
            int year = Convert.ToInt32(DropDownList2.SelectedValue);
            int mouth = Convert.ToInt32(DropDownList3.SelectedValue);
            if (mouth == 1 || mouth == 3 || mouth == 5 || mouth == 7 || mouth == 8 || mouth == 10 || mouth == 12)
            {
            }
            else if (mouth == 4 || mouth == 6 || mouth == 9 || mouth == 11)
            {
                if (i == 31)
                {
                    break;
                }
            }
            else if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
            {
                if (i == 30)
                {
                    break;
                }
            }
            else
            {
                if (i == 29)
                {
                    break;
                }
            }
            ListItem li = new ListItem(i.ToString());
            DropDownList4.Items.Add(li);
        }
    }

    void DropDownList2_SelectedIndexChanged(object sender, EventArgs e)
    {
        DropDownList3.Items.Clear();
        DropDownList4.Items.Clear();
        for (int i = 1; i <= 12; i++)
        {
            ListItem li = new ListItem(i.ToString());
            DropDownList3.Items.Add(li);
        }

        for (int i = 1; i <= 31; i++)
        {
            int year = Convert.ToInt32(DropDownList2.SelectedValue);
            int mouth = Convert.ToInt32(DropDownList3.SelectedValue);
            if (mouth == 1 || mouth == 3 || mouth == 5 || mouth == 7 || mouth == 8 || mouth == 10 || mouth == 12)
            {
            }
            else if (mouth == 4 || mouth == 6 || mouth == 9 || mouth == 11)
            {
                if (i == 30)
                {
                    break;
                }
            }
            else if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
            {
                if (i == 29)
                {
                    break;
                }
            }
            else
            {
                if (i == 28)
                {
                    break;
                }
            }
            ListItem li = new ListItem(i.ToString());
            DropDownList4.Items.Add(li);
        }
    }

日期

注:

PlaceHolder给文本框添加水印文字;

js代码中window.onload = function () {}为页面加载完成成执行脚本,return false 阻止按钮执行操作

时间: 2024-10-26 06:41:42

Webform(Repeater控件)的相关文章

webform repeater控件

Repeater: HeaderTemplate - 在加载开始执行一遍 ItemTemplate - 有多少条数据,执行多少遍 FooterTemplate - 在加载最后执行一遍 AlternatingItemTemplate - 交替项模板 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="lianxi.aspx.cs" Inherits="lianxi"

webform(三)Repeater控件

Repeater 控件用于显示重复的项目列表,这些项目被限制在该控件.Repeater 控件可被绑定到数据库表.XML 文件或者其他项目列表. 一.建实体类和数据访问类 建立的方法和winform一样,建立时会提示类文件应该放在App_Code文件里,是否放入,选择是,会自动创建该文件夹并将类放进去. webform没有命名空间. 实体类: public class Users { public int Ids { get; set; } public string Ucode { get; s

WebForm以及WebForm中Repeater控件、简单控件使用

ASP.NET分为:ASP.NET WebForm和ASP.NET MVC 运行机制: C/S(客户端应用程序) 代码在客户端执行,仅仅去服务器上的数据库存取数据 B/S(网站应用程序) 程序代码在服务器上执行,客户端仅仅渲染HTML+CSS,执行JS代码,其它所有的功能都在服务器上执行 客户端浏览器发送请求→服务器上的IIS(Internet 信息服务管理器)(html+css+js)→服务器上的.net framwork进行代码处理→服务器上的数据库 web为什么越来越受欢迎 1.不吃用户电

【2017-05-18】WebForm的Repeater控件和一些简单控件

一.Repeater控件 1. <%@ %> - 这里面写一些声明和引用的 <%  %> - 编写C#代码的 <%= %> - 往界面上输出一个变量的值 <%# Eval("属性名","可选,格式字符串")%> - 在Repeater数据展示中使用 2.Repeater控件   - 用来展示数据重复执行. <HeaderTemplate></HeaderTemplate>     先执行,执行一

WebForm(四)——Repeater控件(重要、好用)

Repeater控件,可以用来一次显示一组数据项.比如,可以用它们显示一个数据表中的所有行.             Repeater控件完全由模板驱动,提供了最大的灵活性,可以任意设置它的输出格式. 一.Repeater控件显示数据 要使用Repeater控件显示数据,必须创建ItemTemplate.如下所示: 例1:使用ItemTemplate显示数据 <asp:Repeater ID="Repeater1" runat="server" DataSou

Webform中Repeater控件--绑定嵌入C#代码四种方式

网页里面嵌入C#代码用的是<% %>,嵌入php代码<?php ?> 绑定数据的四种方式: 1.直接绑定 <%#Eval("Code") %> 2.调用函数 <%#ShowSex()%> 3.显示外键关系列 <%#Eval("Nation1.Name") %> 4.格式化显示 <%#Eval("Birthday","{0:yyyy年MM月dd日}") %>

Repeater控件 ---表格展示数据

简介: Repeater控件是Web 服务器控件中的一个容器控件,它使您可以从页的任何可用数据中创建出自定义列表. Repeater 控件不具备内置的呈现功能,这表示用户必须通过创建模板为 Repeater 控件提供布局.当该页运行时, Repeater 控件依次通过数据源中的记录为每个记录呈现一个项. Repeater控件不具备内置的呈现功能,所以我们得用一些模板来实现他的数据呈现 下表描述了 Repeater 控件支持的模板.  模板属性                           

Repeater控件

本文转自:http://www.cnblogs.com/me115/archive/2011/04/09/2010682.html Repeater基础 在aspx文件中加入Repeater 控件,在<ItemTemplate></ItemTemplate>包含的范围里加入自己控制的代码,需要替换的变量使用<%# Eval("SellerName")%>:注意两侧的引号. .aspx: 1 <asp:Repeater ID="Sell

Repeater控件-2

本文转自:http://www.cnblogs.com/foolin/archive/2011/08/31/2161342.html 文章最后更新于2011年9月2日,增加Demo代码. 一般开发绑定数据的时候,Repeater控件是非常好用的控件,但是很多.net开发人员苦恼于无法分页,于是开发一个基于Repeater的分页控件,现在拿出来和大家一起分享分享.写得不好大家可以尽管拍砖,源码在本文后面.其实这个分页控件非常简单,分页控件只是根据记录数和当前页数等设置而输出一个分页导航条而已,并没