PDA

View Full Version : Delete کردن در DataGridView



nazaninebaba
دوشنبه 04 آذر 1387, 12:00 عصر
با سلام
من در يكي از فرمام يك DataGridView1 دارم مي خوام با انتخاب يك سطر از اون بتونم حذفش كنم ولي يك error دارم.
DataGridView1.CurrentRow اين بخش ازم error ميگيره اگر ممكنه راهنمايي كنيد.
متشكرم

Dim conbank As SqlConnection
Dim adaptsql As SqlDataAdapter
Dim datbank As DataSet



datbank.Tables("table1").Rows(DataGridView1.CurrentRow).delete()
Dim con As New SqlCommandBuilder(adaptsql)
adaptsql.Update(datbank, "table1")

حامد_رشنو
دوشنبه 04 آذر 1387, 14:46 عصر
اگه اطلاعات رو از دیتا بیس بگیری باید جدولت یه فیلد کلیدمثلا(code) داشته باشه.
روش دسترسی به سطرهای دیتا گرید اینجوریه:
a=datageideview1.item(x,e.row).value
x شماره ستونیه که مقدار code توشه
با نوشتن این کد تو رویداد cellcelick دیتا گرید مقدار code سطر مورد نظر تو متغییر a قرار میگیره.
حالا میتونی با دستور دلیت فیلد مورد نظرت رو از جدول پاک کنی:
delete from t1 where code = a
بعد تابعی که باهاش دیتا گریدت رو پر کردی دوباره فراخوانی کن:تشویق:

saeednadery
دوشنبه 04 آذر 1387, 14:59 عصر
به صورت زير قرار بده ببين جواب مي دهد
DataGridView1.CurrentRow.Index

ath.gha
دوشنبه 04 آذر 1387, 20:13 عصر
Dim s As New SqlClient.SqlDataAdapter
Dim ds As New DataSet
Dim dv As New DataView


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
dv.Item(r).Delete
s.Update(ds )
End Sub


Private Sub DataGridView1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
r = e.RowIndex
End Sub

nazaninebaba
دوشنبه 04 آذر 1387, 23:06 عصر
خيلي ممنون از پاسختان
چون راه حل اقاي ناصري بسيار كوتاه بود انجام دادم و جواب داد از راه حلهاي ديگر هم متشكرم
DataGridView1.Capture = "record no." & DataGridView1.CurrentRow.Index + 1 & "of" & datbank.Tables("table1").Rows.Count
اگر ممكن هست مشكل اين خط را هم بگييد.به جاي capture از چي استفاده كنم captiontext را هم قبول نمي كند.