Работа с DataGridViewComboBoxColumn - C#
Формулировка задачи:
Всем здравствуйте. помогите пожалуйста разобраться. Есть 4 колонки 2 из них DataGridViewComboBoxColumn.
Код программы создания combobox :
Код программы обработка события :
При клике и выборе значения из combobox значение присваивается в первую ячейку.
Но вот проблема когда я выбираю 2-ой combobox то опять записывается в первую.
Я так понимаю что необходимо по имени combobox заполнять соответствующую ячейку.
Помогите пожалуйста с получением имени. Ну или если есть еще варианты , буду рад...
Заранее спасибо.
private void RepiarRegion_Click(object sender, EventArgs e)
{
DataGridViewComboBoxColumn Region1 = new DataGridViewComboBoxColumn();
Region1.HeaderText ="Регион из БД";
Region1.Name = "Регион из БД";
ArrayList SpisokRegion = GetArrayRegion();
Region1.Items.AddRange(SpisokRegion.ToArray());
dataGridView1.Columns.Add(Region1);
dataGridView1.Columns["Регион из БД"].DisplayIndex = 1;
DataGridViewComboBoxColumn Client1 = new DataGridViewComboBoxColumn();
Client1.Name = "Заказчик из БД";
ArrayList SpisokClient = GetArrayClient();
Client1.Items.AddRange(SpisokClient.ToArray());
dataGridView1.Columns.Add(Client1);
dataGridView1.Columns["Заказчик из БД"].DisplayIndex = 3;
}private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
combo = e.Control as ComboBox;
if (combo != null )
{
combo.SelectedIndexChanged -= new EventHandler(combo_SelectedIndexChanged);
combo.SelectedIndexChanged += combo_SelectedIndexChanged;
}
}
private void combo_SelectedIndexChanged(object sender, EventArgs e)
{
string selectedItem = (sender as ComboBox).SelectedItem.ToString();
dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[0].Value = selectedItem;
}Решение задачи: «Работа с DataGridViewComboBoxColumn»
textual
Листинг программы
ComboBox box = sender as ComboBox; string boxName = box.Name;