PDA

View Full Version : bind datagridview to textbox



kaka2438
یک شنبه 13 اسفند 1391, 13:17 عصر
سلام
من میخواستم وفتی روی هر یک از سطر های دیتا گرید کلیک میکنم مقدار های رکوردهای انتخابشده از دیتا گرید در تکس باکس نمایش داده بشه
من این کد رو نوشتم اما نمیدونم کجا و داخل چه با ید اسفاده کنم!!
با تشکر


Private Sub DataGridView1_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
Try
Dim con As New SqlConnection("server=MAHDI-PC\MSSQLSERVER1;database=mydatabase;Integrated Security=True")
con.Open()
Dim strsql As String
strsql = "select * from date"
Dim da As New SqlDataAdapter(strsql, con)
Dim ds As New DataSet()
da.Fill(ds, "date")
TextBox1.DataBindings.Add(New Binding("Text", ds, "date.id"))
TextBox2.DataBindings.Add(New Binding("Text", ds, "date.detemiladi"))
TextBox3.DataBindings.Add(New Binding("Text", ds, "date.dateshamsi"))
DataGridView1.DataSource = ds
DataGridView1.DataMember = "date"
Catch ex As Exception
Exit Sub
End Try
End Sub

tolid123456789
یک شنبه 13 اسفند 1391, 13:41 عصر
سلام دوست عزيز
كدتون رو در رويداد Cell enter ديتا گريد بنويسيد
لطفا امتحان كنيد و نتيجه رو بگيد

kaka2438
یک شنبه 13 اسفند 1391, 17:44 عصر
با سلام مجدد
فقط برای رکورد اول کار میکنه(یعنی نمایش میده به طور خودکار).
وقتی روی رکورد دیگه کلیک میکنم عمل بانگ انجام نمیشه

hosseinbarnamenevis
یک شنبه 13 اسفند 1391, 20:46 عصر
به نظر من این کد بهتره


txtCode.Text = dgforosh.CurrentRow.Cells(0).Value

شماره صفر منظور اولین خانه دیتا گرید هست که کلیک شده و حالا کافیه شمارش رو عوض کنید
رویداد Cell Enter هم مناسب واسه استفاده
اما میتونید تویه رویداد های دیگه هم بزارید که حتما اجرا بشه

zahedi121
دوشنبه 14 اسفند 1391, 05:56 صبح
سلام
تکست هاتون را به table binding source وصل کنید. حالت ویزاد خود VB هم از این روش استفاده میکند.
این سورس را ببینید :

kaka2438
دوشنبه 14 اسفند 1391, 12:14 عصر
ممنون از راهنمایی خوب و جامع
با تشکر