我有一个datagridview,它的数据源设置为数据视图 - >数据表和行&列在运行时自动生成。
dtable.Columns.Add("1", typeof(int));
dtable.Columns.Add("2", typeof(string));
dtable.Columns.Add("3", typeof(string));
datagridview1.DataSource = dtable;
我希望第3列是下拉类型,并且有3个选项。我如何在运行时执行此操作,因为我只在运行时填充网格。
答案 0 :(得分:3)
您可以以编程方式将列添加到DataGridView
。
在您的情况下,您需要做的是隐藏绑定到DataTable
时生成的第3列,然后将DataGridViewComboBoxColumn
添加到网格中,其中第3列的名称为{{ 1}}属性。
DataPropertyName
然后,您可以将数据源分配给此列,其中该数据源包含您希望在网格中显示的三个选项。
DataGridViewComboBoxColumn col = new DataGridViewComboBoxColumn();
col.DataPropertyName = "3";
dataGridView1.Columns.Add(col);
还具有DataGridViewComboBoxColumn
和ValueMember
属性,可让您控制在网格数据源(DisplayMember
)中设置的内容以及显示的内容。
答案 1 :(得分:0)
DataGridViewComboBoxCell cbo1 = new DataGridViewComboBoxCell();
DataGridViewRow dataGridRow = new DataGridViewRow();
dataGridRow.Cells.Add(cbo1);
dataGridView1.Rows.Add(dataGridRow);
您创建了一个datagridview组合框并将其添加到datagridview1
中