C# 如何将组合框或复选框添加到现有记录中;Datagridview“;不在新专栏中

C# 如何将组合框或复选框添加到现有记录中;Datagridview“;不在新专栏中,c#,checkbox,datagridview,C#,Checkbox,Datagridview,在我的代码中,我想将复选框添加到“Datagridview”结果中,我已经找到了如何为Datagridview添加combobox或复选框的解决方案,但通过添加新列,我想将复选框添加到现有结果中,我将向您详细解释 如果我有“选择语句”的结果来显示此数据: 我不想最后或首先添加新列,我想将复选框放在最后一列“状态”(来自数据库),以修改其结果并更新数据库中同一列的现有记录 或者为该列添加带有预定义集合的组合框,使用户可以将状态从“待定”修改为“已接受”或“已拒绝”,但不在新列中的同一记录中 这就

在我的代码中,我想将复选框添加到“Datagridview”结果中,我已经找到了如何为Datagridview添加combobox或复选框的解决方案,但通过添加新列,我想将复选框添加到现有结果中,我将向您详细解释

如果我有“选择语句”的结果来显示此数据:

我不想最后或首先添加新列,我想将复选框放在最后一列“状态”(来自数据库),以修改其结果并更新数据库中同一列的现有记录

或者为该列添加带有预定义集合的组合框,使用户可以将状态从“待定”修改为“已接受”或“已拒绝”,但不在新列中的同一记录中

这就是我想做的:

公共表单1()
{
初始化组件();
}
私有无效按钮1\u单击(对象发送者,事件参数e)
{
AddComboxBoxControlsInGridViewColumn();
}
私有void AddComboxBoxControlsInGridViewColumn()
{
DataTable dt=新的DataTable();
dt.列。添加(“状态”);
对于(int j=0;j<10;j++)
{
dt.行。添加(“”);
}
this.dataGridView1.DataSource=dt;
this.dataGridView1.Columns[0].Width=200;
DataGridViewComboxCell ComboxCell=新DataGridViewComboxCell();
ComboBoxCell.Items.AddRange(新字符串[]{“待定”、“已接受”、“已拒绝”});
this.dataGridView1[0,0]=ComboBoxCell;
this.dataGridView1[0,0].Value=“已接受”;
}

欢迎来到。您需要的所有代码都在这里:。只需使用ComboBox方法,因为带有文本的单元格中的复选框将需要大量自定义编码。@Ahmed一如既往,winforms中需要大量自定义编码的东西可以通过两行XAML实现。如果您需要高级UI功能(例如能够在网格单元格/列表框/组合框中放入与默认内容不同的内容),我强烈建议您切换到任何当前(
public Form1()
{
        InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
        AddComboxBoxControlsInGridViewColumn();
}

private void AddComboxBoxControlsInGridViewColumn()
{
    DataTable dt = new DataTable();
    dt.Columns.Add("Status");
    for (int j = 0; j < 10; j++)
    {
        dt.Rows.Add("");
    }
    this.dataGridView1.DataSource = dt;
    this.dataGridView1.Columns[0].Width = 200;

    DataGridViewComboBoxCell ComboBoxCell = new DataGridViewComboBoxCell();
    ComboBoxCell.Items.AddRange(new string[] { "Pending","Accepted","Rejected" });
    this.dataGridView1[0, 0] = ComboBoxCell;
    this.dataGridView1[0, 0].Value = "Accepted";
}