PDA

View Full Version : انتخاب دیتا گرید ویو ونشان دادن اطلاعات آن در روی فرم؟



farhad85
چهارشنبه 11 دی 1392, 14:53 عصر
سلام دوستان
من میخوام وقتی روی یک رکورد از دیتا گرید کلیک کردم تمام اطلاعات دیتا گرید اعم ار تکیتها وتصوبر عکس عضوها در روی فرم س جای خودشون قرار بگیرن مثل عکس ریر
114686
مثلا این رکورد دارای نام و نام خانوادگی و عکس و... هستش میخوام وقتی انتخاب شد آیتم های بالا مساوی اطلاعات رکورددیتا گرید ویو باشن

arash21hhhh
چهارشنبه 11 دی 1392, 16:32 عصر
سلام .
تو رویداد کلیک دیتا گرید باید بنویسید :
textbox1.text=datagridview1.currentrow.cells(0).va lue.tostring.trim و ....

behrooz69
پنج شنبه 12 دی 1392, 15:18 عصر
سلام دوستان
من میخوام وقتی روی یک رکورد از دیتا گرید کلیک کردم تمام اطلاعات دیتا گرید اعم ار تکیتها وتصوبر عکس عضوها در روی فرم س جای خودشون قرار بگیرن مثل عکس ریر
114686
مثلا این رکورد دارای نام و نام خانوادگی و عکس و... هستش میخوام وقتی انتخاب شد آیتم های بالا مساوی اطلاعات رکورددیتا گرید ویو باشن

اینم نمایش عکس از گرید تو Picture box :

سلام دوستان از ساعت 9 شب تا 6 صبح دنبال فهمیدن مشکل کارم بودم و بالاخره تونستم پیداش کنم .
هوررررررااااااااااااااااا ا !!! مشکل همه رو هم حل کردم .

حتما برنامه هایی رو دیدید که وقتی رو Data Grid View کلیک میکنید عکس تو دیتا پایین صفحه باز میشه یا متن سطر هاش داخل تککس باکس ها نشون میده یا تو فرم دیگه باز میشه وقتی دابل کلیک میکنیم . خو حالا من میگم چجوری :

من تو برنامم عکس هارو داخل دیتابیس Sql خودم Save کردم و اونو وصل کردم به DataGridView .

حالا با کلیک رو سطر مورد نظر هم اطلاعات متن هاش داخل تکس باکس هایی که مشخص کردم نشون داده میشن هم عکس تو PictureBox مورد نظر :بوس::تشویق::تشویق::تشویق::تش یق:


اول بیاین این تابع رو تعریف کنید :

Public Function GetDataToImage(ByVal pData As Byte()) As Image
Try
Dim imgConverter As New ImageConverter()
Return TryCast(imgConverter.ConvertFrom(pData), Image)
Catch ex As Exception
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error])
Return Nothing
End Try
End Function

بعد بیای تو رویداد CellClick مربوط به DataGridView خودتون این چند خط کد رو بنویسید :

Private Sub DataGridView1_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellClick

'// aval bayad image ma convert beshe az tarigh tabe GetDataToImage o bad neshon dade she

PicBoxInShowInfo.Image = GetDataToImage(CType(DataGridView1.CurrentRow.Cell s(7).Value, Byte()))

TextBox1.Text = DataGridView1.CurrentRow.Cells(0).Value.ToString.T rim
TextBox2.Text = DataGridView1.CurrentRow.Cells(1).Value.ToString.T rim

End Sub

توضیحشم اینه که وقتی عکسی تو دیتابیس ذخیره میشه آرایه ای از byte هاست و وقتی از روش
DataGridView1.CurrentRow.Cells(7).Value
استفاده میکنید با اررور اینکه این خط String هست و به BYte تبدیل نمیشه مواجه میشین وو واسه اینکار باید اول اونو توسط یه تابع بیاید به Byte تبدیل کنید و BYte به BYte تو PictureBox نشون بدید .

2 خط پایینم به صورت آزمایشیه و فقط 2 سلول رو تو تکس باکس ما نشون میده . آدرس سلول ها از 0 شروع میشه .


یا حق

farhad85
پنج شنبه 12 دی 1392, 16:34 عصر
آفرین ممنونم++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++

behrooz69
پنج شنبه 12 دی 1392, 16:45 عصر
خواهش میکنم