PDA

View Full Version : مشکل در فرستادن اطلاعات datagridview به combobox در ویرایش



mary3541
شنبه 24 مرداد 1388, 18:35 عصر
سلام
توی برنامم 2تا فرم دارم که در فرم اولم یه datagridview دارم و در فرم دومم یه combobox دارم توی datagridview فیلدهای جدولم که عبارتند از ID,Name,Family , ... هست نمایش داده میشه و در combobox اطلاعات ستون name نمایش داده میشه
حالا میخوام با انتخاب یک ردیف در datagridview و زدن دکمه ای در فرم اولم نامی که انتخاب شده در combo box دوم نمایش داده بشه براش کد زیر رو نوشتم ولی name انتخابی رو نمایش نمیده


Form2 f2 = new Form2();
f2.comboBox1.Text = dataGridView1.CurrentRow.Cells[1].Value.ToString();
f2.ShowDialog();

مهدی فرزاد
شنبه 24 مرداد 1388, 19:24 عصر
سلام دوست عزیز به احتمال زیاد شما ComboBox رو روی حالت DropDownList قرار دادید
اگه جواب مثبته 2 حالت وجود داره

1 -اگه خالیه و شما میخواید فقط همین یک اسم رو نمایش بده


Form2 f2 = newForm2();
f2.comboBox1.Items.Add (dataGridView1.CurrentRow.Cells[1].Value.ToString());
f2.comboBox1.SelectedIndex= 0;
f2.ShowDialog();

2- اگه ComboBox از دیتا بیس پر شده، اول به من بگید که ترتیب پرشده ComboBox با datagridview یکسان هست یا نه تا سعی کنم راحترین راه رو بهتون بگم.

mary3541
شنبه 24 مرداد 1388, 21:31 عصر
سلام دوست عزیز به احتمال زیاد شما ComboBox رو روی حالت DropDownList قرار دادید
اگه جواب مثبته 2 حالت وجود داره

1 -اگه خالیه و شما میخواید فقط همین یک اسم رو نمایش بده


Form2 f2 = newForm2();
f2.comboBox1.Items.Add (dataGridView1.CurrentRow.Cells[1].Value.ToString());
f2.comboBox1.SelectedIndex= 0;
f2.ShowDialog();

2- اگه ComboBox از دیتا بیس پر شده، اول به من بگید که ترتیب پرشده ComboBox با datagridview یکسان هست یا نه تا سعی کنم راحترین راه رو بهتون بگم.


به صورت 2 هست
بله ترتیب آن با datagridview یکسان هست

mary3541
یک شنبه 25 مرداد 1388, 09:30 صبح
کسی نیست کمک کنه؟

sara62
یک شنبه 25 مرداد 1388, 10:15 صبح
سلام دوست عزیز
اگر ترتیب آن با datagridview یکی است می تونید از selectedIndex استفاده کنید

مهدی فرزاد
یک شنبه 25 مرداد 1388, 13:35 عصر
سلام دوست عزيز ببخشيد دير شد، من مشكل اينترنت داشتم

راه حل selectedIndex رو كه دوستمون گفتن پيشنهاد نميكنم چون اگه sort ديتا گريد بهم بخوره جواب نميده
من اين راه رو كه در زير توضيح ميدم بهتون پيشنهاد ميكنم
1- توي فر 2 يك متغير Public به نام ObjID تعريف كن، چون من نميدونم اطلا عات ستون ID ديتا بيس شما از چه نوعيه توي مثالم اونو از نوع Object تعريف كردم
2- خاصيت comboBox1.ValueMember رو برابر ID ديتا بيس قرار بده
3- توي متد Form2_Load بعد از تمامي كد ها در آخر كد زير رو بنويس:

comboBox1.SelectedValue = objID;
4 - حالا كد هايي رو كه توي Form1 نوشتي به صورت زير تغير بده


Form2 f = new Form2();
f.objID = dataGridView1.CurrentRow.Cells["ID"].Value;
f.ShowDialog();

اين كار مشكلت رو حل ميكنه(به جاي ID در ‍Cell["ID"].Value ميتوني شماره رديف بگذاري)
موفق باشي
بازم شرمنده كه دير شد