在运行时更改为datagridview中的comboBox

本文关键字:datagridview 中的 comboBox 运行时 | 更新日期: 2023-09-27 18:03:59

我使用默认的datagridview在我的windows窗体应用程序中显示数据。

如果有人单击了某一列,我想为该单元格显示一个组合框。因此,在运行时,用户只能为该列单元格选择固定值。

我想在click event上做。

我以编程方式添加列和行到dataridview。

当我添加一个数据表到datagridView,我不能添加DataGridViewComboBoxColumn到数据表。

代码如下:

           using (StringReader reader = new StringReader(new  StreamReader(fileStream, Encoding.Default).ReadToEnd()))
            {
                while (reader.Peek() != -1)
                {
                    string line = reader.ReadLine();
                    if (line == null || line.Length == 0)
                        continue;
                    string[] values = line.Split(',');
                    output.Add(values);
                    if (!isColumnCreated)
                    {
                        for (int i = 0; i < values.Count() - 1; i++)
                        {
                          table.Columns.Add(values[i]);
                        }
                        isColumnCreated = true;
                        continue;
                    }
                    DataRow row = table.NewRow();
                      for (int i= 0; i < values.Count() - 1; i++)
                    {

                        row[i] = values[i];

                    }
                   table.Rows.Add(row);
                }
            }
            dataGridView1.DataSource = table;

在运行时更改为datagridview中的comboBox

我不建议在单击时更改DataGridView单元格的类型。只需填充你的DataGridView正常与您的particular column DataGridViewComboBoxColumn然后尝试这个:

(your particular column).DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing;

非编辑模式时,显示的DataGridViewComboBoxCell不带下拉按钮。Readmore。