ispostback问题我在做购物车的时候加了一个更改数量的功能
而要用此功能的话必须在page_load的时候加not ispostback而加了这个后我的分页功能game over了~发出完整代码
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If Not Request.Cookies("userName") Is Nothing Then
If Not IsPostBack Then
Dim Conn As SqlConnection
Dim MyComm As SqlCommand
Dim Adpt As SqlDataAdapter
Dim customSetting As String = System.Configuration.ConfigurationSettings.AppSettings("ConnectionString")
Conn = New SqlConnection(customSetting)
Conn.Open() Dim Pagesize, Pagecount, RecordNum, CurrentPage As Integer '定义分页
Pagesize = 10
MyComm = New SqlCommand("select count(*) as ID from Shop_car where 用户名= '" & Trim(Request.Cookies("username").Value) & "'and 标识=0", Conn)
Dim dr As SqlDataReader = MyComm.ExecuteReader()
Dim intCount As Integer
If dr.Read() Then
intCount = dr("ID")
Else
intCount = 0
End If
dr.Close() '结束
RecordNum = intCount If RecordNum Mod Pagesize = 0 Then
Pagecount = RecordNum \ Pagesize
Else
Pagecount = RecordNum \ Pagesize + 1
End If
ViewState("PageCount") = Pagecount Dim SQL As String
Dim da As New SqlDataAdapter(SQL, Conn)
Dim ds As New DataSet
SQL = "select * from Shop_car where 用户名= '" & Trim(Request.Cookies("username").Value) & "' and 标识=0 order By ID desc"
da = New SqlDataAdapter(SQL, Conn)
ds = New DataSet
da.Fill(ds) DataGrid1.DataSource = ds
DataGrid1.DataBind() Label5.Text = RecordNum
Label6.Text = Pagecount
If Label5.Text = "0" Then
ImageButton1.Visible = False
ImageButton2.Visible = False
ImageButton3.Visible = False
ImageButton4.Visible = False
DataGrid1.Visible = False
End If
Conn.Close()
End If
Else
Response.Redirect("Login.aspx?From=" & Request.Url.ToString) End If
End Sub打开分页 Private Sub DataGrid1_PageIndexChanged(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridPageChangedEventArgs) Handles DataGrid1.PageIndexChanged
DataGrid1.CurrentPageIndex = e.NewPageIndex
DataGrid1.DataBind()
End Sub
而要用此功能的话必须在page_load的时候加not ispostback而加了这个后我的分页功能game over了~发出完整代码
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If Not Request.Cookies("userName") Is Nothing Then
If Not IsPostBack Then
Dim Conn As SqlConnection
Dim MyComm As SqlCommand
Dim Adpt As SqlDataAdapter
Dim customSetting As String = System.Configuration.ConfigurationSettings.AppSettings("ConnectionString")
Conn = New SqlConnection(customSetting)
Conn.Open() Dim Pagesize, Pagecount, RecordNum, CurrentPage As Integer '定义分页
Pagesize = 10
MyComm = New SqlCommand("select count(*) as ID from Shop_car where 用户名= '" & Trim(Request.Cookies("username").Value) & "'and 标识=0", Conn)
Dim dr As SqlDataReader = MyComm.ExecuteReader()
Dim intCount As Integer
If dr.Read() Then
intCount = dr("ID")
Else
intCount = 0
End If
dr.Close() '结束
RecordNum = intCount If RecordNum Mod Pagesize = 0 Then
Pagecount = RecordNum \ Pagesize
Else
Pagecount = RecordNum \ Pagesize + 1
End If
ViewState("PageCount") = Pagecount Dim SQL As String
Dim da As New SqlDataAdapter(SQL, Conn)
Dim ds As New DataSet
SQL = "select * from Shop_car where 用户名= '" & Trim(Request.Cookies("username").Value) & "' and 标识=0 order By ID desc"
da = New SqlDataAdapter(SQL, Conn)
ds = New DataSet
da.Fill(ds) DataGrid1.DataSource = ds
DataGrid1.DataBind() Label5.Text = RecordNum
Label6.Text = Pagecount
If Label5.Text = "0" Then
ImageButton1.Visible = False
ImageButton2.Visible = False
ImageButton3.Visible = False
ImageButton4.Visible = False
DataGrid1.Visible = False
End If
Conn.Close()
End If
Else
Response.Redirect("Login.aspx?From=" & Request.Url.ToString) End If
End Sub打开分页 Private Sub DataGrid1_PageIndexChanged(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridPageChangedEventArgs) Handles DataGrid1.PageIndexChanged
DataGrid1.CurrentPageIndex = e.NewPageIndex
DataGrid1.DataBind()
End Sub
Dim MyComm As SqlCommand
Dim Adpt As SqlDataAdapter
Dim customSetting As String = System.Configuration.ConfigurationSettings.AppSettings("ConnectionString")
Conn = New SqlConnection(customSetting)
Conn.Open() Dim Pagesize, Pagecount, RecordNum, CurrentPage As Integer '定义分页
Pagesize = 10
MyComm = New SqlCommand("select count(*) as ID from Shop_car where 用户名= '" & Trim(Request.Cookies("username").Value) & "'and 标识=0", Conn)
Dim dr As SqlDataReader = MyComm.ExecuteReader()
Dim intCount As Integer
If dr.Read() Then
intCount = dr("ID")
Else
intCount = 0
End If
dr.Close() '结束
RecordNum = intCount If RecordNum Mod Pagesize = 0 Then
Pagecount = RecordNum \ Pagesize
Else
Pagecount = RecordNum \ Pagesize + 1
End If
ViewState("PageCount") = Pagecount Dim SQL As String
Dim da As New SqlDataAdapter(SQL, Conn)
Dim ds As New DataSet
SQL = "select * from Shop_car where 用户名= '" & Trim(Request.Cookies("username").Value) & "' and 标识=0 order By ID desc"
da = New SqlDataAdapter(SQL, Conn)
ds = New DataSet
da.Fill(ds)
写在一个方法里:CreateDataSource();
在Sub DataGrid1_PageIndexChanged方法里: DataGrid1.CurrentPageIndex = e.NewPageIndex
DataGrid1.DataSource = CreateDataSource()
DataGrid1.DataBind()
随便是什么拉,C#这里人气旺点嘛。
理解理解诶!!