DataList分页、增加、删除、修改实例

datalist控件没有内置的分页功能,所以对于分页需自己写程序去实现;本示例还包括了DataList的所有基本操作,如添加,删除,修改,选择等;具体代码如下:


前台代码:Default.aspx
----------------------------------------

<%@ Page language="c#" Codebehind="Default.aspx.cs" AutoEventWireup="false" Inherits="Example.DataListTest" %>



   DataListTest
  
  
  
   http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
  


  
   
    
    
    
    
     
    
    
     
    
   
DataList嵌套实例

               border="1">
       
        
       
      
           RepeatLayout="Flow">
          
                         border="1">
            
             
             
             
             
            
           
TypeName选择确定删除

          

          
           
            
             
              
              
             
             
              
              
             
             
              
             
            
TypeIDTypeName

                
                

                
                

               

           

          

          
                         border="1">
            
             
             
             
             
             
            
           
TypeID
              
TypeName
              

              

          

          
           
            
             
             
             
             
            
           

                <%# DataBinder.Eval(Container.DataItem,"C_TypeName")%>
              

             

              

              

               
               

          

          
           
            
             
             
            
            
             
             
            
           
TypeName
               
               

               
               

               

          

         

     

      
       
        
        
        
        
        
        
        
        
       
      

          条记录

          页/共
         
每页转到
         

     

  


后台代码:Default.aspx.cs
----------------------------------------

/*----------------------------------------------------------------
// 版权所有: 亿思维软件工作室
// 网站地址: Http://www.easewe.com
// 联系方式: 87015203(QQ),easewe@126.com(Email)
// 整理日期: 2005.09.14
//----------------------------------------------------------------*/
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
namespace Example
{
     ///


     /// DataListTest 的摘要说明。
     ///

     public class DataListTest : System.Web.UI.Page
     {
         protected System.Web.UI.WebControls.DataList DataList1;
         protected System.Web.UI.WebControls.Label lblRecNum;
         protected System.Web.UI.WebControls.Label lblCurPageNO;
         protected System.Web.UI.WebControls.Label lblPageNum;
         protected System.Web.UI.WebControls.Button btnFirst;
         protected System.Web.UI.WebControls.Button btnPreview;
         protected System.Web.UI.WebControls.Button btnNext;
         protected System.Web.UI.WebControls.Button btnLast;
         protected System.Web.UI.WebControls.DropDownList ddlPageRowNum;
         protected System.Web.UI.WebControls.DropDownList ddlJumpToPageNum;

         protected string connString;
         protected int pageNum = -1;
         protected int recNum = -1;
         protected int pageRecNum = -1;
         protected int curPageNO = -1;
         private void Page_Load(object sender, System.EventArgs e)
         {
             // 在此处放置用户代码以初始化页面
             connString = @"Provider=Microsoft.Jet.OleDb.4.0;Data Source=" + Request.PhysicalApplicationPath + "DataList.mdb";
             if ( !Page.IsPostBack )
             {
                 //-----------recNum
                 OleDbConnection conn = new OleDbConnection();
                 conn.ConnectionString = connString;
                 conn.Open();
                 OleDbCommand cmd = new OleDbCommand("select count(*) from ArticleType",conn);
                 recNum = Convert.ToInt32(cmd.ExecuteScalar());
                 conn.Close();
                 //-----------pageRecNum
                 ddlPageRowNum.Items.Clear();
                 for( int i=1;i<=recNum;i++ )
                 {
                     ddlPageRowNum.Items.Add(i.ToString());
                 }
                 if ( recNum < 5 )
                 {
                     ddlPageRowNum.SelectedIndex = recNum - 1;
                 }
                 else
                 {
                     ddlPageRowNum.SelectedIndex = 4;
                 }
                
                 //------------------pageRecNum,pageNum
                 pageRecNum = Convert.ToInt32(ddlPageRowNum.SelectedValue);
                 if ( Convert.ToInt32(recNum % pageRecNum) == 0 )
                 {
                     pageNum = Convert.ToInt32(recNum/pageRecNum);
                 }
                 else
                 {
                     pageNum = Convert.ToInt32(recNum/pageRecNum) + 1;
                 }
                 ddlJumpToPageNum.Items.Clear();
                 for( int i=1;i<=pageNum;i++ )
                 {
                     ddlJumpToPageNum.Items.Add(i.ToString());
                 }
                 lblPageNum.Text = pageNum.ToString();
                 ViewState["PageRowNum"] = pageRecNum;
                 ViewState["RecNum"] = recNum;
                 ViewState["PageNum"] = pageNum;
                 //-----------------curPageNO
                 curPageNO = 1;
                 ViewState["CurPageNO"] = curPageNO;
                 //------------------
             }
             pageRecNum = Convert.ToInt32(ViewState["PageRowNum"]);
             recNum = Convert.ToInt32(ViewState["RecNum"]);
             curPageNO = Convert.ToInt32(ViewState["CurPageNO"]);
             pageNum = Convert.ToInt32(ViewState["PageNum"]);
             //------------pageNum
             if ( pageRecNum==-1 || recNum==-1 )
             {
                 Response.Write("发生错误!");
                 Response.End();
             }
             if ( curPageNO <= 1 )
             {
                 curPageNO = 1;
                 btnFirst.Enabled = false;
                 btnPreview.Enabled = false;
             }
             //-----------------
             lblRecNum.Text = recNum.ToString();
             lblCurPageNO.Text = curPageNO.ToString();

             //-----------------
             if ( !Page.IsPostBack )
             {
                 BindData();
             }

         }


         #region Web 窗体设计器生成的代码
         override protected void OnInit(EventArgs e)
         {
             //
             // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
             //
             InitializeComponent();
             base.OnInit(e);
         }
  
         ///


         /// 设计器支持所需的方法 - 不要使用代码编辑器修改
         /// 此方法的内容。
         ///

         private void InitializeComponent()
         {    
             this.DataList1.ItemCommand += new System.Web.UI.WebControls.DataListCommandEventHandler(this.DataList1_ItemCommand);
             this.DataList1.CancelCommand += new System.Web.UI.WebControls.DataListCommandEventHandler(this.DataList1_CancelCommand);
             this.DataList1.EditCommand += new System.Web.UI.WebControls.DataListCommandEventHandler(this.DataList1_EditCommand);
             this.DataList1.UpdateCommand += new System.Web.UI.WebControls.DataListCommandEventHandler(this.DataList1_UpdateCommand);
             this.DataList1.DeleteCommand += new System.Web.UI.WebControls.DataListCommandEventHandler(this.DataList1_DeleteCommand);
             this.DataList1.ItemDataBound += new System.Web.UI.WebControls.DataListItemEventHandler(this.DataList1_ItemDataBound);

             this.btnFirst.Click += new System.EventHandler(this.btnFirst_Click);
             this.btnPreview.Click += new System.EventHandler(this.btnPreview_Click);
             this.btnNext.Click += new System.EventHandler(this.btnNext_Click);
             this.btnLast.Click += new System.EventHandler(this.btnLast_Click);
             this.ddlPageRowNum.SelectedIndexChanged += new System.EventHandler(this.ddlPageRowNum_SelectedIndexChanged);
             this.ddlJumpToPageNum.SelectedIndexChanged += new System.EventHandler(this.ddlJumpToPageNum_SelectedIndexChanged);
             this.Load += new System.EventHandler(this.Page_Load);

         }
         #endregion

         #region datelist


         private void BindData()
         {
             string commandText = "select * from ArticleType";
             //----------
             OleDbConnection conn = new OleDbConnection();
             conn.ConnectionString = connString;
             conn.Open();
             OleDbDataAdapter da = new OleDbDataAdapter(commandText,conn);
             DataSet ds = new DataSet();
             da.Fill(ds,(curPageNO-1) * pageRecNum,pageRecNum,"ArticleType");
             //----------
             DataList1.DataSource = ds.Tables["ArticleType"];
             DataList1.DataBind();  
             ds.Clear();
             conn.Close();
             lblCurPageNO.Text = curPageNO.ToString();
 

 
[收藏] [返回顶部] [打印本页] [关闭窗口]  
 
 
 
 相关主题:  
 
DataList分页、增加、删除、修改实例
DataList嵌套DataList
比较详细的DataList控件的用法。(一)
 
 网友评论:
正在加载……
 
*评论者:
主页:
标题:
*内容:
【声明】 地球黑匣子网刊载的资讯及其他内容均由网友提供分享 并且纯属作者个人观点,不表示地球黑匣子网同意其说法或描述,仅为提供更多信息,也不构成任何建议。网友转载请注明原作者姓名及出处。如有侵犯到您的版权,请与我们联系,我们会马上进行重新整理!
最新日志列表
人气主题
 
 
 
 
声明:本网站部分内容属网民发布和来自于互联网。对于引用、发布、转载和放置的内容(广告、链接、文字、图像或声音),所产生的所有法律责任,都将由信息归属者或者广告厂商提供者承担,并且由此产生的版权、署名权的异议、纠纷,本网站概不承担任何责任,本站转载素材仅供大家欣赏和分享,切勿做为商业目的使用。
 
Copyright © 地球黑匣子网 2007.06 - 2010   Email:dqhxzcom@163.com
鲁ICP备07501416号   QQ:254212580 网站管理