سلام.از دوستان کسی با DataGridViewComboBoxColumn توی Datagridview کار کرده؟من کمک فوری نیاز دارم
سلام.از دوستان کسی با DataGridViewComboBoxColumn توی Datagridview کار کرده؟من کمک فوری نیاز دارم
سلام
مشکلتون چیه؟
سلام.میخوام توش Item درج کنم یا بگم فلان Item انتخاب بشه و کلا بتونم باهاش کار کنم.مرسی.فقط لطف کنید فوری کمک کنید.مورد اضطراریه.ممنون
برای ایجاد یا تغییر ستونی از نوع کمبو باکس از کلاس DataGridViewComboBoxColumn و برای کار روی فیلد هایی از همین نوع، از کلاس DataGridViewComboBoxCell استفاده می کنیم.
نحوه ایجاد ستون:
DataGridViewComboBoxColumn dgvc = new DataGridViewComboBoxColumn() ;
dgvc.HeaderText = "ComboBox";
dgvc.Name = "cbocol";
dgvc.Items.AddRange("1", "2", "3");
dataGridView1.Columns.Add(dgvc);
HeaderText: عنوان نمایشی سلول
Name: نام سلول
AddRange: اضافه کردن مقادیر چندتایی در کومبو باکس. همچنین می تونید از تابع Add هم استفاده کنید.
تغییر ستون:
DataGridViewComboBoxColumn c = (DataGridViewComboBoxColumn)dataGridView1.Columns["cbocol"];
c.Items.Clear();
c.Items.Add("Ali");
c.Items.Add("Reza");
c.Items.Add("mehdi");
قطعه کد بالا تغییرات رو در تمامی سلول های ستون و سلول هایی که بعدا ایجاد خواهد شد اعمال می کند.
Clear: محتویات کومبو باکس ها را از بین می برد.از تابع RemoveAt و Remove برای حذف آیتم دلخواه استفاده کنید.
Add: آیتم های جدید را بوسیله این تابع اضافi کردیم.
کار روی سلول ها:
1- بدست آوردن مقدار انتخاب شده در سلول:
dataGridView1["cbocol", RowIndex].Value.ToString();
کد بالا مقدار انتخاب شده در ستون cbocol را بصورت رشته ای بر می گرداند. باید توجه داشته باشید که حتما مقداری انتخاب شده باشد در غیر این صورت، برنامه دچار خطای runTime می شود. به جای RowIndex شماره سطر موردنظرتون بزارید.
2- اضافه کردن و حذف آیتم در داخل یک سلول:
در ابتدا باید شی ای از کلاس dataGridViewComboBoxCell تعریف کنیم.
DataGridViewComboBoxCell cell = (DataGridViewComboBoxCell)dataGridView1.CurrentRow .Cells["cbocol"];
cell.Items.Add("New Item");
cell.Items.RemoveAt(2);
کد بالا آیتم جدیدی بنامه New Item رو به سلول cbocol سطر جاری اضافه می کند و هم چنین آیتم سوم را حذف می کند.
انتخاب آیتم:
DataGridViewComboBoxCell c = (DataGridViewComboBoxCell)dataGridView1["cbocol", 2];
c.Value = c.Items[2];
قطعه کد بالا سومین آیتم رو از کومبو باکس انتخاب می کند.
آخرین ویرایش به وسیله ali.rezaei7 : سه شنبه 27 مهر 1389 در 10:51 صبح
دوست عزیز من اینچند خط دستور را نوشتم.اما از دوخط آخر ایراد میگیره.متن خطا هم اینه
DataGridViewComboBoxCell ce1 = (DataGridViewComboBoxCell)frm.dataGridView3[9, i];
ce1.Value = "a";
DataGridViewComboBoxCell ce2 = (DataGridViewComboBoxCell)frm.dataGridView3[10, i];
ce2.Value = "a";
DataGridViewComboBoxCell ce3 = (DataGridViewComboBoxCell)frm.dataGridView3[11, i];
ce3.Value = "a";
خطا هم ضمیمه کردم.
به این صورت عمل کنید.
ce1.Items[index]="value"