为什么我加载上bg()后就不能实现Button1_Click()和gidupdata()对数据的修改了
不加载bg(),Button1_Click()没问题。若gidupdata()中的id设为定值怎也能修改。后台:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
bg()
bd() '在此处放置初始化页的用户代码
End Sub'读取数据库
Sub bg() Dim sqlcon As New SqlConnection("server=I;uid=sa;pwd=as;database=jiagong")
Dim ds As New DataSet
sqlcon.Open()
Dim sqld As New SqlDataAdapter("select * from fdinghuo where shunxu=' 50' ", sqlcon)
sqld.Fill(ds, "fuheban")
dg.DataSource = ds.Tables("fuheban")
dg.DataBind()
sqlcon.Close()
sqlcon = Nothing
'Dim strsql As String
'strsql = "select * from fdinghuo where shunxu='50' "
'Dim sqlcon2 As New SqlConnection("server=I;uid=sa;pwd=as;database=jiagong")
'Dim sqlcommand2 As New SqlCommand
'Dim datareader2 As SqlDataReader
'sqlcon2.Open()
'sqlcommand2.Connection = sqlcon2
'sqlcommand2.CommandText = strsql
'datareader2 = sqlcommand2.ExecuteReader
'While datareader2.Read
' ComboBox1.Text = datareader2.Item("sheng")
' ComboBox2.Text = datareader2.Item("shi")
' TextBox1.Text = datareader2.Item("tihuoriqi")
' Label2.Text = datareader2.Item("kehu")
' Label3.Text = datareader2.Item("riqi")
' Label4.Text = datareader2.Item("yewuyuan")
'End While
'sqlcon2.Close()
'sqlcon2 = Nothing
'sqlcommand2 = Nothing 'datareader2 = Nothing End Sub
‘绑定
Sub bd()
Dim sqlcon As New SqlConnection("server=I;uid=sa;pwd=as;database=jiagong")
Dim ds As New DataSet
sqlcon.Open()
'drop1()
Dim sqld1 As New SqlDataAdapter
sqld1.SelectCommand = New SqlCommand("select distinct sheng from fdinghuo ", sqlcon)
sqld1.Fill(ds, "sheng")
ComboBox1.DataSource = ds.Tables("sheng").DefaultView
ComboBox1.DataBind()
sqlcon.Close()
sqlcon = Nothing
Dim sqlcon2 As New SqlConnection("server=I;uid=sa;pwd=as;database=jiagong")
Dim ds2 As New DataSet
sqlcon2.Open() 'drop1()
Dim sqld2 As New SqlDataAdapter
sqld2.SelectCommand = New SqlCommand("select distinct shi from fdinghuo ", sqlcon2)
sqld2.Fill(ds2, "shi")
ComboBox2.DataSource = ds2.Tables("shi").DefaultView
ComboBox2.DataBind()
sqlcon2.Close()
sqlcon2 = Nothing
End Sub
’删除
Sub griddelete(ByVal sender As Object, ByVal E As DataGridCommandEventArgs)
Dim strid, strsql As String
strid = dg.DataKeys.Item(E.Item.ItemIndex)
strsql = "delete from fdinghuo where id='" & strid & "' "
Dim sqlcon As New SqlConnection("server=i;uid=sa;pwd=as;database=jiagong")
sqlcon.Open()
Dim sqlcommand As New SqlCommand
sqlcommand.Connection = sqlcon
sqlcommand.CommandText = strsql
sqlcommand.ExecuteNonQuery()
sqlcon.Close()
sqlcon = Nothing
sqlcommand = Nothing
dg.EditItemIndex = -1
bg() End Sub
'编辑
Sub gridedit(ByVal sender As Object, ByVal E As DataGridCommandEventArgs)
dg.EditItemIndex = E.Item.ItemIndex bg()
End Sub
'取消
Sub gridcancel(ByVal sender As Object, ByVal E As DataGridCommandEventArgs)
dg.EditItemIndex = -1
bg() End Sub '修改
Sub gridupdate(ByVal sender As Object, ByVal E As DataGridCommandEventArgs)
Dim strid, strsql As String
Dim introw As Integer
Dim obj1, obj2, obj3, obj4, obj5, obj6, obj7, obj8, obj9, obj10, obj11, obj12, obj13, obj14, obj15, obj16, obj17 As TextBox
introw = E.Item.ItemIndex
obj1 = dg.Items(introw).Cells(1).Controls(0)
Label6.Text = obj1.Text
strid = dg.DataKeys.Item(introw)
strsql = "update fdinghuo set yanse='" & obj1.Text & "' where id='" & strid & "'"
Dim sqlcon As New SqlConnection("server=i;uid=sa;pwd=as;database=jiagong")
sqlcon.Open()
Dim sqlcommand As New SqlCommand
sqlcommand.Connection = sqlcon
sqlcommand.CommandText = strsql
sqlcommand.ExecuteNonQuery()
sqlcon.Close()
sqlcon = Nothing
sqlcommand = Nothing
dg.EditItemIndex = -1
bg()
End Sub
‘修改
Private Sub (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Label5.Text = ComboBox2.Text
Dim sqlcon As New SqlConnection("server=i;uid=sa;pwd=as;database=jiagong")
Dim sqlcommand As New SqlCommand
Dim sql As String sql = "update fdinghuo set sheng='" & ComboBox1.Text & "',shi='" & ComboBox2.Text & "',tihuoriqi='" & TextBox1.Text & "' where shunxu='50' "
sqlcon.Open()
sqlcommand.Connection = sqlcon
sqlcommand.CommandText = sql
sqlcommand.ExecuteNonQuery()
sqlcon.Close()
sqlcon = Nothing
sqlcommand = Nothing
bg()
End Sub
不加载bg(),Button1_Click()没问题。若gidupdata()中的id设为定值怎也能修改。后台:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
bg()
bd() '在此处放置初始化页的用户代码
End Sub'读取数据库
Sub bg() Dim sqlcon As New SqlConnection("server=I;uid=sa;pwd=as;database=jiagong")
Dim ds As New DataSet
sqlcon.Open()
Dim sqld As New SqlDataAdapter("select * from fdinghuo where shunxu=' 50' ", sqlcon)
sqld.Fill(ds, "fuheban")
dg.DataSource = ds.Tables("fuheban")
dg.DataBind()
sqlcon.Close()
sqlcon = Nothing
'Dim strsql As String
'strsql = "select * from fdinghuo where shunxu='50' "
'Dim sqlcon2 As New SqlConnection("server=I;uid=sa;pwd=as;database=jiagong")
'Dim sqlcommand2 As New SqlCommand
'Dim datareader2 As SqlDataReader
'sqlcon2.Open()
'sqlcommand2.Connection = sqlcon2
'sqlcommand2.CommandText = strsql
'datareader2 = sqlcommand2.ExecuteReader
'While datareader2.Read
' ComboBox1.Text = datareader2.Item("sheng")
' ComboBox2.Text = datareader2.Item("shi")
' TextBox1.Text = datareader2.Item("tihuoriqi")
' Label2.Text = datareader2.Item("kehu")
' Label3.Text = datareader2.Item("riqi")
' Label4.Text = datareader2.Item("yewuyuan")
'End While
'sqlcon2.Close()
'sqlcon2 = Nothing
'sqlcommand2 = Nothing 'datareader2 = Nothing End Sub
‘绑定
Sub bd()
Dim sqlcon As New SqlConnection("server=I;uid=sa;pwd=as;database=jiagong")
Dim ds As New DataSet
sqlcon.Open()
'drop1()
Dim sqld1 As New SqlDataAdapter
sqld1.SelectCommand = New SqlCommand("select distinct sheng from fdinghuo ", sqlcon)
sqld1.Fill(ds, "sheng")
ComboBox1.DataSource = ds.Tables("sheng").DefaultView
ComboBox1.DataBind()
sqlcon.Close()
sqlcon = Nothing
Dim sqlcon2 As New SqlConnection("server=I;uid=sa;pwd=as;database=jiagong")
Dim ds2 As New DataSet
sqlcon2.Open() 'drop1()
Dim sqld2 As New SqlDataAdapter
sqld2.SelectCommand = New SqlCommand("select distinct shi from fdinghuo ", sqlcon2)
sqld2.Fill(ds2, "shi")
ComboBox2.DataSource = ds2.Tables("shi").DefaultView
ComboBox2.DataBind()
sqlcon2.Close()
sqlcon2 = Nothing
End Sub
’删除
Sub griddelete(ByVal sender As Object, ByVal E As DataGridCommandEventArgs)
Dim strid, strsql As String
strid = dg.DataKeys.Item(E.Item.ItemIndex)
strsql = "delete from fdinghuo where id='" & strid & "' "
Dim sqlcon As New SqlConnection("server=i;uid=sa;pwd=as;database=jiagong")
sqlcon.Open()
Dim sqlcommand As New SqlCommand
sqlcommand.Connection = sqlcon
sqlcommand.CommandText = strsql
sqlcommand.ExecuteNonQuery()
sqlcon.Close()
sqlcon = Nothing
sqlcommand = Nothing
dg.EditItemIndex = -1
bg() End Sub
'编辑
Sub gridedit(ByVal sender As Object, ByVal E As DataGridCommandEventArgs)
dg.EditItemIndex = E.Item.ItemIndex bg()
End Sub
'取消
Sub gridcancel(ByVal sender As Object, ByVal E As DataGridCommandEventArgs)
dg.EditItemIndex = -1
bg() End Sub '修改
Sub gridupdate(ByVal sender As Object, ByVal E As DataGridCommandEventArgs)
Dim strid, strsql As String
Dim introw As Integer
Dim obj1, obj2, obj3, obj4, obj5, obj6, obj7, obj8, obj9, obj10, obj11, obj12, obj13, obj14, obj15, obj16, obj17 As TextBox
introw = E.Item.ItemIndex
obj1 = dg.Items(introw).Cells(1).Controls(0)
Label6.Text = obj1.Text
strid = dg.DataKeys.Item(introw)
strsql = "update fdinghuo set yanse='" & obj1.Text & "' where id='" & strid & "'"
Dim sqlcon As New SqlConnection("server=i;uid=sa;pwd=as;database=jiagong")
sqlcon.Open()
Dim sqlcommand As New SqlCommand
sqlcommand.Connection = sqlcon
sqlcommand.CommandText = strsql
sqlcommand.ExecuteNonQuery()
sqlcon.Close()
sqlcon = Nothing
sqlcommand = Nothing
dg.EditItemIndex = -1
bg()
End Sub
‘修改
Private Sub (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Label5.Text = ComboBox2.Text
Dim sqlcon As New SqlConnection("server=i;uid=sa;pwd=as;database=jiagong")
Dim sqlcommand As New SqlCommand
Dim sql As String sql = "update fdinghuo set sheng='" & ComboBox1.Text & "',shi='" & ComboBox2.Text & "',tihuoriqi='" & TextBox1.Text & "' where shunxu='50' "
sqlcon.Open()
sqlcommand.Connection = sqlcon
sqlcommand.CommandText = sql
sqlcommand.ExecuteNonQuery()
sqlcon.Close()
sqlcon = Nothing
sqlcommand = Nothing
bg()
End Sub
bg()
bd() '在此处放置初始化页的用户代码
End If不知道有没有用,试试吧
bg()
bd() '在此处放置初始化页的用户代码
End If
应当是这个吧,要!IsPostBack
if (!IsPostBack)
{
bg();
bd();
}
这样在做gidupdate()操作时不会重新执行上面的语句,而是只执行gidupdate()方法中最后的bg()重新绑定。