.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)
{
    // обработка события
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5
Похожие ответы