.NET 4.x Заполнение DataGridViewComboBoxCell - C#
Формулировка задачи:
Добрый день!
Подскажите, пожалуйста, как осуществить заполнение DataGridViewComboBoxCell в след. случае: имеется DataGridView, три столбца: первые два типа TextBoxColumn, третий - ComboBoxColumn. Первые два столбца заполняются значениями из файла. Необходимо, чтобы в каждой строке в ComboBoxCell можно было выбрать значение либо первого, либо второго столбца той же строки, либо ввести собственное значение.
Заранее спасибо.
Решение задачи: «.NET 4.x Заполнение DataGridViewComboBoxCell»
textual
Листинг программы
private void Form1_Load(object sender, EventArgs e)
{
string[] lines = File.ReadAllLines(@"d:\1.txt");
dataGridView1.RowCount = lines.Length;
for (int i = 0; i < lines.Length; i++)
{
string[] line = lines[i].Split();
dataGridView1[0, i].Value = line[0];
dataGridView1[1, i].Value = line[1];
Rectangle rect = dataGridView1.GetCellDisplayRectangle(2, i, false);
ComboBox cb = new ComboBox();
cb.Items.AddRange(line);
cb.Location = new Point(rect.X + dataGridView1.Location.X, rect.Y + dataGridView1.Location.Y);
cb.Size = new Size(rect.Width, rect.Height);
cb.SelectedIndexChanged += new EventHandler(cb_SelectedIndexChanged); //подключение обработчика
this.Controls.Add(cb);
dataGridView1.SendToBack();
}
}
void cb_SelectedIndexChanged(object sender, EventArgs e)
{
// обработка события
}