首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

关于datagrid分页的有关问题,

2012-03-08 
关于datagrid分页的问题,在线等。。。。我新做了一个datagrid分页的程序,但是出现的问题是:------------------

关于datagrid分页的问题,在线等。。。。
我新做了一个datagrid分页的程序,但是出现的问题是:

-------------------------
编译错误  
说明:   在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。  

编译器错误信息:   CS0122:   不可访问“Test.WebForm2.DataGrid1_PageIndexChanged(object,   System.Web.UI.WebControls.DataGridPageChangedEventArgs)”,因为它受保护级别限制

源错误:

 

行   11:   <body   MS_POSITIONING= "GridLayout ">
行   12:   <form   id= "Form1 "   method= "post "   runat= "server ">
行   13:   <asp:DataGrid   id= "DataGrid1 "   style= "Z-INDEX:   101;   LEFT:   8px;   POSITION:   absolute;   TOP:   8px "   runat= "server "   PageSize= "3 "   AllowPaging= "True "   OnPageIndexChanged= "DataGrid1_PageIndexChanged() ">
行   14:   <PagerStyle   NextPageText= "下一页 "   PrevPageText= "上一页 "> </PagerStyle>
行   15:   </asp:DataGrid>
 

源文件:   http://localhost/Test/WebForm2.aspx         行:   13  


----------------------------------

分页页面是WebForm2.aspx
代码如下:


<%@   Page   language= "c# "   Codebehind= "WebForm2.aspx.cs "   AutoEventWireup= "false "   Inherits= "Test.WebForm2 "   %>
<!DOCTYPE   HTML   PUBLIC   "-//W3C//DTD   HTML   4.0   Transitional//EN "   >
<HTML>
<HEAD>
<title> WebForm2 </title>
<meta   name= "GENERATOR "   Content= "Microsoft   Visual   Studio   .NET   7.1 ">
<meta   name= "CODE_LANGUAGE "   Content= "C# ">
<meta   name= "vs_defaultClientScript "   content= "JavaScript ">
<meta   name= "vs_targetSchema "   content= "http://schemas.microsoft.com/intellisense/ie5 ">
</HEAD>
<body   MS_POSITIONING= "GridLayout ">
<form   id= "Form1 "   method= "post "   runat= "server ">
<asp:DataGrid   id= "DataGrid1 "   style= "Z-INDEX:   101;   LEFT:   8px;   POSITION:   absolute;   TOP:   8px "   runat= "server "   PageSize= "3 "   AllowPaging= "True "   OnPageIndexChanged= "DataGrid1_PageIndexChanged() ">
<PagerStyle   NextPageText= "下一页 "   PrevPageText= "上一页 "> </PagerStyle>
</asp:DataGrid>
</form>
</body>
</HTML>


-----------------------

后台代码是:


using   System;
using   System.Collections;
using   System.ComponentModel;
using   System.Data;
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.SqlClient;

namespace   Test
{
///   <summary>
///   WebForm2   的摘要说明。
///   </summary>
public   class   WebForm2   :   System.Web.UI.Page


{
protected   System.Web.UI.WebControls.DataGrid   DataGrid1;

private   void   Page_Load(object   sender,   System.EventArgs   e)
{
//   在此处放置用户代码以初始化页面

if(!this.Page.IsPostBack){
databind();
}
}

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

///   <summary>
///   设计器支持所需的方法   -   不要使用代码编辑器修改
///   此方法的内容。
///   </summary>
private   void   InitializeComponent()
{        
this.DataGrid1.SelectedIndexChanged   +=   new   System.EventHandler(this.DataGrid1_SelectedIndexChanged);
this.Load   +=   new   System.EventHandler(this.Page_Load);

}
#endregion

private   void   databind()//绑定数据
{
SqlConnection   con=new   SqlConnection(System.Configuration.ConfigurationSettings.AppSettings[ "ConnectionString "]);
con.Open();
string   sql_str= "select   pp_id,pp_name,pp_user,pp_pic,crdate,is_foreign,is_tj,is_pass   from   Y_PinPai   ";
DataSet   ds=new   DataSet();
SqlDataAdapter   sda=new   SqlDataAdapter(sql_str,con);
sda.Fill(ds, "Y_PinPai ");
DataGrid1.DataSource=ds.Tables[ "Y_PinPai "];
DataGrid1.DataBind();      
}

private   void   DataGrid1_PageIndexChanged(object   source,   System.Web.UI.WebControls.DataGridPageChangedEventArgs   e)
{
this.DataGrid1.CurrentPageIndex=e.NewPageIndex;
databind();  
}


private   void   DataGrid1_SelectedIndexChanged(object   sender,   System.EventArgs   e)
{

}


}
}



[解决办法]
private void databind
改成pubic
[解决办法]
将DataGrid1定义为public
[解决办法]
public void DataGrid1_PageIndexChanged--改成这样了??

热点排行