PDA

View Full Version : سوال: مشکل در خذف اطلاعات گرایدویو



a_123123123123
شنبه 18 تیر 1390, 12:22 عصر
سلام دوستان
من یه گرایدویو دارم که به یه جدول بانکم مقید شده
تو این گرایدویو من یک ستون ردیف دارم که شماره هارو از 1 ، یکی زیاد میکنه
تو این گراید ویو یه دکمه autogeneraldeletebutton استفاده کردم که کاربر رو هر دکمه حذف کلیک کنه سطی که اون دکمه دراون قرار داره حذف میشه
حالا ه مشکل برخوردم
چون اگه بخوام برای حذف از این روش استفاده کنم باید ستون ردیف رو به ستون id تو انکم مقید کنم که شماره ستون رو از اون طریق بخونه
و چون از طرفی من میخوام شماره ردیف من یکیک زیاد بشه نمیدونم باید چیکار کنم

این دستور حذف هستش که من استفاده میکنم
Protected Sub grid_user_RowDeleting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles grid_user.RowDeleting
Dim rowEdit As GridViewRow = grid_user.Rows(e.RowIndex)
Dim com As New SqlCommand
Dim int_number As String = CType(rowEdit.FindControl("lit_number"), Literal).Text
Dim str_aks As String = String.Empty

con.Open()
com.Connection = con
com.CommandText = "select * from tbl_user where id ='" & int_number & "'"
Dim reader As SqlDataReader = com.ExecuteReader
If reader.HasRows = True Then
reader.Read()
str_aks = (reader.GetString(11))
End If
con.Close()

com.Connection = con
com.CommandText = "delete from tbl_user where id= '" & int_number & "'"
Try
con.Open()
com.ExecuteNonQuery()

System.IO.File.Delete(Server.MapPath(str_aks))
Catch ex As SqlException
Response.Write(ex.Message.ToString())
Finally
If con.State <> ConnectionState.Closed Then con.Close()
If (Not com Is Nothing) Then com.Dispose()
grid_load()
End Try

End Sub

و این دستور برای ردیف
Protected Sub grid_user_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles grid_user.PageIndexChanging
Dim dta As New SqlDataAdapter("select * from tbl_user ", con)
Dim ds As New DataSet
ds.Clear()
dta.Fill(ds, "tbl_user")
grid_user.PageIndex = e.NewPageIndex
grid_user.DataSource = ds
grid_user.DataBind()

ViewState("PageIndex") = e.NewPageIndex.ToString()
con.Close()
End Sub


Protected Sub grid_user_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) Handles grid_user.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
'row index
'e.Row.Cells[1] همان ستون ردیف است
If ViewState("PageIndex") Is Nothing Then
e.Row.Cells(0).Text = (e.Row.RowIndex + 1).ToString()
Else
Dim page As Integer = Convert.ToInt32(ViewState("PageIndex"))
e.Row.Cells(0).Text = (10 * (page) + e.Row.RowIndex + 1).ToString()
End If
End If

حالا لطفا بگید اشکال کارکجاست و من چه طوری باید حلش کنم؟

TeacherMath
شنبه 18 تیر 1390, 14:10 عصر
grid_user_PageIndexChanging
توی این رویداد دیگه نباید بایند کنی .
Dim dta As New SqlDataAdapter("select * from tbl_user ", con) Dim ds As New DataSet
ds.Clear()
dta.Fill(ds, "tbl_user")
grid_user.PageIndex = e.NewPageIndex
grid_user.DataSource = ds
grid_user.DataBind()

این کدها را فعلا کامنت کن شاید درست بشه.

a_123123123123
یک شنبه 19 تیر 1390, 00:34 صبح
دوستان نظر دیگه ای ندارند؟

dontspeak
یک شنبه 19 تیر 1390, 01:25 صبح
یه سری به این آموزش تصویریم بزن فکر کنم کمکت کنه
http://www.learningweb.ir/showthread.php?16-آموزش-تصویری-sqlDataSource
البته توی این روش پاک کردن از یک گرید ویو رو آموزش دادم ولی در مورد ارتباط بین دو جدول و کم کردن یک سطر به طور همزمان از دو جدول صحبت نکردم. که انشالله واسه بعدا آماده میکنم

a_123123123123
یک شنبه 19 تیر 1390, 09:09 صبح
ممنون از راهنمایت
دانلود کردم ولی وقتی میخوام اکسترکتش کنم یه پنجره باز میشه
عکسش رو میذارم
لطفا بگو چیکار کنم

dontspeak
یک شنبه 19 تیر 1390, 11:25 صبح
خوب 4 تا قسمته هر چهارتا قسمتو دانلود کن
موفق باشی

a_123123123123
یک شنبه 19 تیر 1390, 15:33 عصر
من هر 4 تا رو دانلود کردم ولی اکسترکت نمیشه

a_123123123123
یک شنبه 19 تیر 1390, 18:27 عصر
چیکارش کنم؟

dontspeak
یک شنبه 19 تیر 1390, 20:31 عصر
موقع اکسترکت کردن مگه هون پیغام بالا رو نمیده؟
وقتی اون پیغام اومد شما از طریق browse آدرس اون فایلی رو که می خواد بدین. پسوردش www.learningweb.ir (http://www.learningweb.ir) هست