PDA

View Full Version : اشکال در gridview



soniarose
دوشنبه 13 مهر 1388, 16:44 عصر
سلام من تو برنامم اطلاعات بانکم رو در gridview نشون میدم و باکلیک کردن در هر سطر اونها در textbox ها نشون داده میشه ولی بعد از هر تغییر در بانکم مثل درج یا ویرایش تغییرات بلافاصله در gridview نشون داده نمیشه یا باید برنامرو دوباره اجرا کنم یا روی gridکلیک کنم

alimanam
دوشنبه 13 مهر 1388, 17:18 عصر
با سلام

طریقه اتصال به بانک و نوع اتصال رو مشخص کنین تا بیشتر بتونیم راهنمائیتون کنیم . ( کد ارتباط رو لطفاً در تاپیک بزارین )

یا علی

mgh64120
دوشنبه 13 مهر 1388, 18:42 عصر
در دستور دكمه ذخيره ديتاگريد رو دوباره بارگذاري كن

anooshiran
دوشنبه 13 مهر 1388, 19:27 عصر
سلام دوست عزيز

تو بعد از هر تغييري كه تو textbox ها ميدي ، اگر ميخواي اون تغييرات در datagridview محاض بشه بايد حتمابه bindingsource اعلام كني كه اديت به پايان رسيده.




bs.EndEdit()




حالا ميتوني اين عمل را در داخل رويداد click يك button انجام بدي. يا در testbox هات بعد از تغيير در event مثل textchanged اين دستور را اجرا كني.

اگر باز هم مشكلي داري بگو تا كد كليشو برات بذارم.

soniarose
سه شنبه 14 مهر 1388, 11:07 صبح
سلام anooshiran عزیز بازم مشکلم حل نشد من از بانک sql استفاده میکنم

anooshiran
سه شنبه 14 مهر 1388, 16:45 عصر
سلام دوست عزيز

برنامه زير را تست كن. فكر مي كنم مشكلت را حل كنه

soniarose
سه شنبه 14 مهر 1388, 19:23 عصر
متاسفانه بازم حل نشد

alimanam
سه شنبه 14 مهر 1388, 19:33 عصر
متاسفانه بازم حل نشد

با سلام

دوست عزیز برای راهنمای سریعتر بهتره اون بخش از کدهایی که باهاش مشکل داری رو در تاپیک بیاری .

یا علی

soniarose
سه شنبه 14 مهر 1388, 21:37 عصر
راستش با کدهام مشکلی ندارم فقط من میخوام وقتی اطلاعاتم رو update یا insert میکنم بلافاصله تغییرات در gridview که اطلاعات بانکم رو نشون میده انجام میشه ومن در هیچ کدوم کدهای upیا insert واتصال به بانکم مشکلی ندارم کدهایی که anooshiran هم گفتند به بانکم اضافه کردم ولی تغییری نکرد

rika_vazy
سه شنبه 14 مهر 1388, 22:53 عصر
یک روش ساده برای فراخوانی دوباره ی اطلاعات

soniarose
چهارشنبه 15 مهر 1388, 19:32 عصر
سلام من در درون دکمه ویرایش این کد قرار میدم و بعد کدهای مربوط به نشان دادن بانک در gridview رو میذارم و در form_load هم کد زیز رو قرار میدم حالا مشکل تغییر بلافاصله در gridview بعد از هر update حل شده ولی بعد از اون دیگه با کلیک کردن روی ستونهای gridview اطلاعات در درون textbox ها قرار نمیگیره


کدهای مربوط به update
.
.
.
con.ConnectionString = "Data Source=(local);Initial Catalog=student;Integrated Security=True"
con.Open()
strsql = "select * from table1"
dr = New SqlDataAdapter(strsql, con)
dr.Fill(ds, "table1")
dgv.DataSource = ds.Tables(0)

con.Close()





Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim bs As New BindingSource()
Dim con As New SqlClient.SqlConnection
Dim dr As New SqlClient.SqlDataAdapter
Dim ds As New DataSet

Dim strsql As String

Dim DataBaseName As String = "student"
Dim TableName As String = "table1"
con.ConnectionString = "Data Source=(local);Initial Catalog= student ;Integrated Security=True"
con.Open()
strsql = "select * from table1"
dr = New SqlClient.SqlDataAdapter(strsql, con)
dr.Fill(ds, "table1")
con.Close()

bs.DataSource = ds
bs.DataMember = ds.Tables(0).TableName
Me.dgv.DataSource = bs
Me.TextBox1.DataBindings.Add("Text", bs, "ID")
Me.TextBox2.DataBindings.Add("Text", bs, "Name")
Me.TextBox3.DataBindings.Add("Text", bs, "famil")
End Sub

rika_vazy
چهارشنبه 15 مهر 1388, 21:27 عصر
با کلیک کردن روی ستونهای gridview اطلاعات در درون textbox ها قرار نمیگیره


در نمونه برنامه ای که براتون گذاشتم با Double Click کردن بر روی سلول های Datagrid مشخصات کاربر بر روی Text box درج میشه.

soniarose
چهارشنبه 15 مهر 1388, 21:38 عصر
برنامه ای رو که شما گذاشته بودید error میداد من نتونستم اجراش کنم و همچنین برنامه شما با بانک access بود ولی من با sql کار میکنم اگه میشه کدشو برام بذارید ممنون

soniarose
پنج شنبه 16 مهر 1388, 12:23 عصر
کمک:گریه::افسرده:

rika_vazy
جمعه 17 مهر 1388, 21:10 عصر
سلام اشکال برنامه از مسیر بانک اطلاعاتی.


=Public er AsString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source
مسیر دقیق فایل اکسس \:E
;Persist Security Info=True"






PrivateSub DataGridView1_CellDoubleClick(ByVal sender AsObject, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) HandlesDataGridView1.CellDoubleClick
If e.RowIndex >= 0 Then


=ol_cm
New OleDbCommand(" select * from sk_ketab where id_book ='" & DataGridView1.Rows(e.RowIndex).Cells(0).Value & "' ", ol_cn)


dr = ol_cm.ExecuteReader



If dr.HasRows = TrueThen

()dr.Read






Text6.Enabled = False

(" نام فیلد بانک اطلاعاتی") Text1.Text = dr





dr.Close()


Button4.Enabled = False

Else





("وجود ندارد") msgbox



EndIf


EndIf

EndSub







به همین کد در برنامه یه نگاهی بنداز