if(!IsPostBack)
{
bindgrid();
}
这样分页不行
去掉
if(!IsPostBack)
{
}

解决方案 »

  1.   

    其实你这个错误很明显的。
    在.NET中,所有需要与SERVER进行交互的控件都必须放置在ASPX的FORM标记中,而且,这个FORM只能有一个和必须是RUNAT=SERVER的,把你的代码修改为:
    <Form Runat=Server>
         <asp:Datagrid
          id="DataGrid1" 
          runat="server"
          BorderColor="black"
          CellPadding="3"
          AllowPaging="True"
          PageSize="10"
          PagerStyle-Mode="NumericPages"
          PagerStyle-HorizontalAlign="Right"
          OnPageIndexChanged="DataGrid1_PageIndexChanged"
          />
    </Form>
      

  2.   

    楼上的补充:
        因为现在的aspx与asp之类的是不同的,aspx是叫 web应用程序,所以必须要runat=server,这点和aspx的服务器设置有重大的关系。
      

  3.   

    一般的用途,用 IE 可以当一般的 web 语言来解析。但,据我观察和了解,ASPX 在有事件发生时,它就按应用程序的方式去执行,所以在你的分页显示的时候,有“DataGridLinkButton”激发 DataGrid1_PageIndexChanged 事件。
        以上的是我的一些小结,如果大家有不认同之处,请指出,大家一起学习学习     :)
      

  4.   

    结果出来了,
    是缺少<form runat=server></form>
    由于我是用文本编辑器,又对asp.net的语法还不是很熟,所以看来刚开始学时还是有visual sutdio.net为好,