如何在gridview中删除动态创建的按钮

时间:2013-12-30 14:41:26

标签: c# .net gridview

我正在尝试找到一种方法来删除当我更改下拉列表所选用户时动态添加的项目。这种方式的作用是我在选择用户时动态添加编辑和删除按钮。我需要在更改用户时删除现有的一个。这是我用来构建两个按钮的代码。我该如何删除它们?我是否会删除列,然后再次添加列?

try
{
    dgvBG.DataSource = this.bgDataTableAdapter.GetData(cbPatientID.SelectedItem.ToString());
    try
    {
        Image editBGImg = Properties.Resources.editor;
        Image delBGImg = Properties.Resources.del;
        DataGridViewImageColumn btnBGEdit = new DataGridViewImageColumn();
        DataGridViewImageColumn btnBGDel = new DataGridViewImageColumn();                            
        btnBGEdit.HeaderText = "Edit";
        btnBGDel.HeaderText = "Delete";
        btnBGEdit.Image = editBGImg;
        btnBGDel.Image = delBGImg;
        btnBGEdit.Width = 35;
        btnBGDel.Width = 42;
        dgvBG.Columns.Add(btnBGEdit);
        dgvBG.Columns.Add(btnBGDel);

1 个答案:

答案 0 :(得分:0)

请尝试此代码。隐藏它们可能比移除它们更好。

for (int i = dgvBG.Columns.Count - 1; i >= 0; i--)
{
    var col = dgvBG.Columns[i];

    if (col.HeaderText == "Edit" || col.HeaderText == "Delete" )
    {
        dgvBG.Columns.Remove(col);
        // col.Visible = false;
    }
}