PDA

View Full Version : Combo in datagrig



hasty0087
جمعه 22 مرداد 1389, 00:40 صبح
سلام.
در صفحه ويرايش اطلاعات ، يك Combo Box در Grid View دارم كه مقدارش رو از DB مي گيره. مي خوام اين COMBO حاوي مقادير 1 تا 30 باشه و در همان ابتدا اون چيزي رو كه كاربر در هنگام درج اطلاعات وارد كرده انتخاب باشه. ممنون مي شم راهنماييم كنيد. البته بگم خودم مي دونم اينو يك بار ديگه Sia مطرح كرده اما در نهايت جوابي كه عملا جواب بدهشون داده نشده.

vandermond
جمعه 22 مرداد 1389, 01:14 صبح
دوست عزيز
كجاش مشكل داري؟ با كمبو بيرون گريد چه فرقي داره مگه. اين هم اسم مخصوص داره اون هم داره. فرقي نداره كه.

hasty0087
دوشنبه 25 مرداد 1389, 20:11 عصر
سلام.
من با استفاده از اين كد ستون Combo box رو به data grid اضافه كردم. حالا چه جوري مي تونم مشخص كنم اون آيتمي كه كاربر هنگام درج، تو پايگاه ذخيره كرده انتخاب باشه؟؟؟؟؟؟؟؟

hasty0087
دوشنبه 25 مرداد 1389, 20:12 عصر
dataGridView1.Columns[0].HeaderText = "كد";
dataGridView1.Columns[1].HeaderText = "نام";
dataGridView1.Columns[2].HeaderText = "عنوان";
dataGridView1.Columns[3].HeaderText = "نويسنده";
dataGridView1.Columns[4].HeaderText = "مترجم";
dataGridView1.Columns[5].Visible = false;
DataGridViewComboBoxColumn colType = new DataGridViewComboBoxColumn();
colType.HeaderText = "تعداد";
colType.DropDownWidth = 90;
colType.Width = 90;
for (int i = 1; i <= 20; i++)
{
colType.Items.AddRange(i);
}
this.dataGridView1.Columns.Insert(5, colType);
dataGridView1.Columns[5].HeaderText = "تعداد";

hasty0087
یک شنبه 31 مرداد 1389, 23:10 عصر
چرا هيچ كس جواب نمي ده؟؟؟؟؟؟؟؟؟؟؟ :(

vandermond
یک شنبه 31 مرداد 1389, 23:39 عصر
دوست عزيز
من كه سوال شما رو متوجه نشدم. اگه ميشه بيشتر توضيح بديد.

azaditafakor
دوشنبه 01 شهریور 1389, 00:07 صبح
به قول دوستمون با کومبو بیرون از گرید هیچ فرقی نداره . مقداری رو که از دیتا بیس میخونید رو به کومبو میدید .

مثلآ

CmbM.SelectedValue = dr["M"].ToString();
یا

CmbM.SelectedIndex = Int32.Parse(dr["M"].ToString()) - 1;

حالا شما مشکلتون همین بود ؟ منم همچین متوجه مشکل شما نشدم . !!!

hasty0087
دوشنبه 01 شهریور 1389, 01:51 صبح
سلام دوستان عزيز
آخه combo داخل گريد كه خاصيت selected value رو نداره. يه ValueMember و displayMember داره كه خيلي باهاش ور رفتم اما جواب نگرفتم.

--------------------
كمككككككككككككككككككككككك :گریه:

#aliyari_C
دوشنبه 01 شهریور 1389, 03:44 صبح
سلام


DataGridViewComboBoxColumn cboBoxColumn = (DataGridViewComboBoxColumn)dataGridView1.Columns[0];

cboBoxColumn.DisplayMember = "Name"; // the Name property in Choice class
cboBoxColumn.ValueMember = "Value"; // ditto for the Value property

یا


DataGridViewComboBoxColumn colType = new DataGridViewComboBoxColumn();
colType.HeaderText = "Type";
colType.DropDownWidth = 90;
colType.Width = 90;
colType.MaxDropDownItems = 5;
this.dataGridView1.Columns.Insert(7, colType);
colType.Items.AddRange("A", "N", "P", "S", "Z");
this.dataGridView1.Columns[7].DataPropertyName = "trans_type";
اگر حرفه ای تر شو خواستی:
http://www.akadia.com/services/dotnet_combobox_in_datagrid.html
--------------------

موفق باشی
__________________________________________________ __________________________________________________
چون به دریا می توانی راه یافت
سوی یک قطره چرا باید شتافـت

نتایج آماری,مقایسه ای بین String و StringBuildr (http://www.barnamenevis.org/forum/showthread.php?t=233987)

hasty0087
دوشنبه 01 شهریور 1389, 22:05 عصر
مرسي.
در پناه حق...

hasty0087
سه شنبه 02 شهریور 1389, 01:35 صبح
چه طور مي تونم به آيتم انتخابي در COMBO دسترسي داشته باشم؟؟؟؟؟؟؟؟؟؟
--------------------
چه طور مي تونم به مقدار انتخاب شده در كومبو دسترسي داشته باشم؟؟؟؟؟؟؟

hasty0087
سه شنبه 02 شهریور 1389, 14:13 عصر
سلام.
اگه بخوام به آيتم انتخابي Combo موجود در DataGridview دسترسي داشته باشم بايد چه كار كنم؟؟؟؟؟؟؟؟؟؟

#aliyari_C
سه شنبه 02 شهریور 1389, 16:47 عصر
(درست است ....نپرسیدن عیب نیست.....نداستن عیب است....ولی اول جستجو کن)


DataGridViewComboBoxCell cell = (DataGridViewComboBoxCell)datagrid1.CurrenCell;
if (cell is DataGridViewComboBoxCell)
string cell=cell.text;

موفق باشی
__________________________________________________ __________________________________________________
چون به دریا می توانی راه یافت
سوی یک قطره چرا باید شتافـت

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

hasty0087
سه شنبه 02 شهریور 1389, 23:55 عصر
سلام. يافتمش. مي زارمش اينجا كه بقيه هم استفاده كنن.

Int32 SelectedRow= this.dataGridView1.Rows.GetFirstRow(DataGridViewEl ementStates.Selected);
string strValueOfCombobox= dataGridView1.Rows[SelectedRow].Cells[1].Value.ToString();