我有一个绑定到数据集的datagridview。该数据集存储来自使用SqlCommandBuilder获取的sql db的数据。更新数据集时,数据集也会更新。
这很好用。
但是我希望其中一个列包含一个组合框。 为此,我添加了一个DataGridViewComboBoxColumn并隐藏了原始列。然后,我尝试在组合框中添加额外的项目,然后绑定数据集。
dataGridView1.DataSource = JoblistDataSet.Tables["Joblist"]; //bind ds to dgv
dataGridView1.Columns["Status"].Visible = false; //hide original column
DataGridViewComboBoxColumn Status = new DataGridViewComboBoxColumn();
//setup combobox
Status.Items.Insert(0, "Select Status");//add extra items
Status.DataSource = JoblistDataSet.Tables["Joblist"];//add original item from ds
Status.HeaderText = @"Status ";
Status.DisplayMember = "Status";
Status.DropDownWidth = 78;
Status.DataPropertyName = "Status";
Status.DisplayIndex = 7;
//add combobox
dataGridView1.Columns.Add(Status);
dataGridView1.Refresh();
我想在其中一个datagridview列上使用一个组合框。在该组合框中,第一项应包含(并显示)行的实际值,其他项应包含其他可用项。
但是,这似乎不起作用。我得到的只是实际行的实际值。我是否采取了错误的方式。有更好的方法吗?