网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP.NET技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.web.config配置文件示例.
..NET 应用程序的性能提升应用技巧.
..Net2.0读取应用程序配置节.
.编写高性能Web应用程序的10个入门.
.下载文件出现提示框或者直接显示.
.最简单的asp.net分页 .
.如何让.Net控件在设计时Initiali.
.使用UTF-8编码/JMail组件发送邮件.
.ASP.NET2.0中的ClientScriptMana.
.asp.net开发wap必备:更好的匹配.
.ASP.NET AJAX正式版带来的Valida.
.asp.net程序中最常用的三十三种编.
.在ASP.NET中使用Treeview控件和X.
.ASP.NET无限分类.
.asp.net 2.0中动态修改页面标题.
.Scott Mitchell 的ASP.NET 2.0数.
.Asp.net2.0:如何使用ObjectData.
.ASP.NET WEB页面多语言支持解决方.
.asp.net 2.0 主题中多CSS文件引用.
.在ASP.NET中防止注入攻击[翻译] .

做个DataList 可分页的数据源

发表日期:2006-6-19


这个数据源,分两部分,一是从数据类中调出数据,然后在本数据源中对分页参数以及页面分页辅助控件进行操作!在前面有三个控件控制翻页,一个下拉列表,两个LinkButton!

关于更多类中数据操作的方法见 http://thcjp.cnblogs.com/archive/2006/06/18/428775.html 这篇

下面 fill() 方法调用很简单,在页面中要重新绑定的地方 写上 fill() 就可以了,呵呵!但是一定要写哦,例如翻页动作执行后!

下面是db类中的ds方法
    public static DataTable ds(string que)
    {//返回一个装载了SQL制定留言的数据表,
        OleDbConnection con = odb.con();
        OleDbDataAdapter oda = new OleDbDataAdapter();
        oda.SelectCommand=new OleDbCommand(que,con);
        DataSet ds = new DataSet();
        oda.Fill(ds,"thc");
        return ds.Tables["thc"];
        con.Close();
    }下面方法使用的数据源就是上面的这个
    private void fill()
    {//做的一个方法,因为页内将有多次的绑定
        //这里设置一个隐藏的Label,用与储存当前的页索引
        int cup = Convert.ToInt32(pagelbl.Text);

        PagedDataSource ps = new PagedDataSource();//NEW一个分页数据源
        ps.DataSource = odb.ds("select * from guest order by id desc").DefaultView;//送一个SQL语句进去,确定该数据源的数据源,有点绕吧,呵呵
        ps.AllowPaging = true;//允许分页
        ps.PageSize = 2;//设置页的数量
        ps.CurrentPageIndex = cup-1;
        if (!IsPostBack)
        {//判断页面是否第一次载入
            for (int i = 1; i <= ps.PageCount; i++)
            {//循环出页码
                pageddl.Items.Add(i.ToString());
            }
        }
        //下面主要是控制上下翻页按纽是否起用
        pageup.Enabled = true;
        pagedown.Enabled = true;
        if (ps.IsFirstPage)
        {//如果是最前页,上页按纽不可用
            pageup.Enabled = false;
        }
        if (ps.IsLastPage)
        {//如果是最后页,下页按纽不可用
            pagedown.Enabled = false;
        }
        //设置页码下拉菜单当前选中的值
        pageddl.SelectedItem.Text = cup.ToString();
        //终于可以绑定给DataList了
        DataList1.DataSource = ps;
        DataList1.DataKeyField = "id";
        DataList1.DataBind();
    }
再下面是翻页事件的处理
    protected void pageddl_SelectedIndexChanged(object sender, EventArgs e)
    {//页码下拉菜单事件
        pagelbl.Text = pageddl.SelectedItem.Text.ToString();
        fill();
    }
    protected void pagedown_Click(object sender, EventArgs e)
    {//下页事件
        pagelbl.Text = Convert.ToString(Convert.ToInt32(pagelbl.Text)+1);
        fill();
    }
    protected void pageup_Click(object sender, EventArgs e)
    {//上页事件
        pagelbl.Text = Convert.ToString(Convert.ToInt32(pagelbl.Text)-1);
        fill();
    }

上一篇:通过预处理器指令调整连接的数据库 人气:5781
下一篇:一些常用的数据操作类 人气:5950
浏览全部DataList的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐