PDA

View Full Version : سوال: مساوی قرار دادن یک رکورد دو دیتا گرید ویو باهم



farhad85
جمعه 01 فروردین 1393, 18:24 عصر
باســــــــــلام و ضمن عرض تبریک سال نو به همه ی دوستان عزیز امیذوارم سال پرباری خصوصا در زمینه برنامه نویسی پیش رو داشته باشین

دوستان من چون از ارتباطات بین جداول بلد نبودم استفاده کنم وواسه ی اینکه افزونگی اطلاعات پیش نیاد اومدم عکسهای هر رکوردو داخل جدول جداگانه ای بنام picer که به دیتا گرید ویو2 وصله ذخیره کردم.
حالامیخوام وقتیکه روی هر رکورد در دیتا گریدویو1( moshakhsat )کلیک کردم پیکچرباکس1 عکس مربوطه داخل دیتا گرید ویو2 رو نشون بده از کد زیر استفاده کردم:


Dim my_da50000 As New SqlDataAdapter("Select * from picer where code_meli='" & TextBox1.Text & "'", my_cn) Dim my_ds50000 As New DataSet my_cn.Open() my_da50000.Fill(my_ds50000, "picer") DataGridView2.DataSource = (my_ds50000) DataGridView2.DataMember = "picer" my_cn.Close() PictureBox1.Image = Image.FromStream(New IO.MemoryStream(CType(DataGridView2.Rows(0).Cells( 1).Value, Byte()))) PictureBox2.Image = PictureBox1.Image

این عمل کارمو راه میندازه ولی مشکل من اینه:
وقتی فرمم بالا میادش رکور دهای دیتا گریدویوها با هم مساوی نیستند مثلا دیتا گرید ویو1 روی رکوردی با کد ملی4073043722 ولی دیتا گرید ویو2 روی رکوردی با کد ملی 5929890447 هستش مانند تصویر زیر که عکس ازآن آقای ماسوری هستش ولی رکورد داخل دیتا گرید ویو1 روی آفای رحیمی خواه متمرکز هستش وهر وقت کد فوق را نیز در رویداد لود فرم قرار میدم با این خطا مواجه میشم.

Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index

117193

systam
جمعه 01 فروردین 1393, 21:24 عصر
سلام
من هم این عید باستانی رو به شما دیگر دوستام گلم تبریک میگم
اینطوری نمیشه روی برنامه نظر داد برنامه رو ضمیمه کنید ؟


یا علی

محمد آشتیانی
جمعه 01 فروردین 1393, 21:39 عصر
سلام
البته از جزئیات برنامه شما اطلاع ندارم ، اما روشی که شما استفاده میکنی به نظرم درست نیست
شما به راحتی میتونی با یه کوئری اطلاعات و عکس افراد رو لود کنی ، و اصلا نیازی به DataGrid دوم نیست
اگر ساختار جدول ها رو بنویسی ، تو نوشتن کوئری میتونم کمکت کنم.


موفق باشید

farhad85
جمعه 01 فروردین 1393, 22:03 عصر
فایلضمیمه
http://www.uplooder.net/cgi-bin/dl.cgi?key=ad5134d34074943eb93fd6b663570d37

محمد آشتیانی
جمعه 01 فروردین 1393, 22:46 عصر
سلام
فایل ضمیمه رو دیدم ، وقتی تو DataGridView1 یک رکورد رو انتخاب میکنی ، رکوردهایی که کد ملی اونا با کد ملی انتخاب شده یکی هست از جدول B توی DataGridView2 نمایش داده میشن (این به نظر نمیرسه مسئله ای داشته باشه)
با توجه به دیتابیس شما ، به ازای هر رکورد توی جدول A میتونه n تا رکورد توی جدول B وجود داشته باشه ، متاسفانه اسم گذاری فیلدها و همون چنتا رکورد تستی که توی دیتابیس هست اینقد نامفهومه که بنده نتونستم بفهمم چه میخوای انجام بدی!
اگر یه توضیح دقیقتر بدی از کاری که میخوای تو همین پروژه تستی که ضمیمه کردی ، بنده در خدمتم


موفق باشید

systam
جمعه 01 فروردین 1393, 22:52 عصر
سلام
با اجازه استادMohammad.Ashtianiاین نمونه نگاه کم ببین چطوره امیدوارم مشکلت بتونه حل کنه
روی گریددومی در داخل ستون هاش که کلیک کنی عکس با دیگر اطاعات عوض میشه
ولی نمیدونم که چرا روی گرید اولی که کلیک میکنی سطر گرید دومی باهم جف میشه ولی عکس عوض نمیشه:متفکر:
http://www.uplooder.net/cgi-bin/dl.cgi?key=2e11b92eed0f168df1b5b98ad8a598bf
منم با نکته های استادMohammad.Ashtiani
فرمودندموافقم یکم توی نام گذاری ها دقت کنید
یا علی

farhad85
شنبه 02 فروردین 1393, 14:26 عصر
ممنون ولی این لینک همون لینک پروژه آزمایشی خودمه؟

systam
شنبه 02 فروردین 1393, 15:00 عصر
سلام
برنامه رو روی برنامه خودت که در اولین پست ضمیمه کردی درست کردم
برنامه رو دانلود کن داخلش رو نگاه کن متوجه خواهی شد
یا علی

محمد آشتیانی
یک شنبه 03 فروردین 1393, 01:51 صبح
سلام
آقا این نمونه خیلی ساده که امیدوارم بهت کمک کنه ، البته خیلی چیزا هست که باید اضافه کنی مثل چک کردن خالی نبودن تکست باکس ها و از این دست موارد ، من فقط کاری رو که خواستی تو این نمونه انجام دادم

لینک دانلود
http://uploadboy.com/t0sw3mvrjx4z.html



موفق باشید

farhad85
پنج شنبه 07 فروردین 1393, 17:56 عصر
مــــــــــــــــــــــمن ونم