PDA

View Full Version : سوال: ارتباط دیتا گرید با تکست باکس



f_arab
پنج شنبه 11 آذر 1389, 09:40 صبح
سلام دوستان عزیز
من از کد زیر برای اینکه اطلاعات دیتاگرید به تکست باکسهای برنامه وارد بشه استفاده می کنم ولی هر کدام از سطرهای دیتاگرید رو که کلیک می کنم باز هم فقط اطلاعات سطر اول رو به من نمایش میده


PrivateSub DataGridView1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DataGridView1.Click
Dim i AsInteger = BindingContext(Me.NamesDataSet1, "tab").Position
If i <> -1 Then
txtcode.Text = NamesDataSet1.tab(i).code
EndIf
EndSub

البته یه دیتاست از ابزارها برداشتم و به فرمم اضافه کردم و دیتا گرید رو هم به اون ارتباط دادم قبلا از این کد استفاده کردم ولی تابحال چنین مشکلی پیش نیومده بود
ممنون میشم راهنماییم کنید
متشکرم

faravani
پنج شنبه 11 آذر 1389, 12:39 عصر
با سلام
من پیشنهاد میدم از گرید DevExpress استفاده کنید هم خیلی زیباست هم دارای امکانات خیلی زیادیه هم اون کاری که شما کردین خیلی آسون انجام میشه

stuprogramer
جمعه 12 آذر 1389, 17:47 عصر
ببخشید از گرید DevExpress چطوری میشه استفاده کرد؟
منظورم اینکه در toolbox که قرار نداره ؟

f_arab
شنبه 13 آذر 1389, 15:12 عصر
من پیشنهاد میدم از گرید DevExpress استفاده کنید هم خیلی زیباست هم دارای امکانات خیلی زیادیه هم اون کاری که شما کردین خیلی آسون انجام میشه
سلام دوست عزیز میشه کمی در مورد پیشنهادتون توضیح بدین؟

Hossein Bazyan
شنبه 13 آذر 1389, 15:55 عصر
با سلام
من پیشنهاد میدم از گرید DevExpress استفاده کنید هم خیلی زیباست هم دارای امکانات خیلی زیادیه هم اون کاری که شما کردین خیلی آسون انجام میشه

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

f_arab
یک شنبه 14 آذر 1389, 11:25 صبح
سلام
دوستان عزیز کسی نمیدونه مشکل کدی که من نوشتم چیه؟
اگه کسی میدونه لطفا راهنمایی کنه
اگه راه دیگه های هم داره ممنون میشم کمکم کنید
متشکرم

ali_najari
یک شنبه 14 آذر 1389, 14:43 عصر
دوست عزيز بجاي اينكه در رويداد Datagirdview.click كدتون رو بنويسيد كافيه كه اين كد رو در رويدارد CellClick بنويسيد
نيازي هم به بايند كردن نيست فقط كافيه كه مقدارهاي سلول ها را برابر با Textbox قرار دهيد!

يعني:

Textbox1.text = Datagridview.selectedRow.Cells(0).value

f_arab
دوشنبه 15 آذر 1389, 11:56 صبح
دوست عزيز بجاي اينكه در رويداد Datagirdview.click كدتون رو بنويسيد كافيه كه اين كد رو در رويدارد CellClick بنويسيد
نيازي هم به بايند كردن نيست فقط كافيه كه مقدارهاي سلول ها را برابر با Textbox قرار دهيد!

يعني:

Textbox1.text = Datagridview.selectedRow.Cells(0).value
این کدو امتحان کردم متأسفانه جواب نمیده
دو تا مشکل وجود داره:
1- تابع selectedrow نداره به جاش تابع selectedrows هست
2- تابع selectedrows زیرمجموعه ای با عنوان cells نداره
این رو هم بگم که من با vb.net 2005 express editon کار می کنم

ali_najari
دوشنبه 15 آذر 1389, 12:28 عصر
دوست عزيز دقيق عبارتي كه من براتون گفتم اين هست!
بخاطر جا انداختن يك تيكه كد معذرت ميخوام:


Textbox1.text = DGV.SelectedRows.Item(0).Cells(1).Value)دوست عزيز منظور از Item(0) هم همان خط اول انتخاب شده هست زيرا اگر به فرض مثال 2 تا سطر انتخاب شده باشده شما براي بدست آوردن مقدار سطر دوم item را 1 قرار ميدهيم!