添加与行相关的按钮

时间:2014-10-31 17:22:05

标签: c#

我尝试向值为2的行添加两个按钮,但这些按钮仅与dataGridView相关。

如果我没有给他们一个特定的位置,他们将出现在dataGridView的顶部,当我给他们一个特定的位置时,他们仍然会出现与dataGridView的关系。

如何使它们与值为2的每一行相关?

我想让按钮显示在该特定行的底部或内部。我很长一段时间都在寻找答案而且找不到任何答案。

Button buttonOk = new Button() { Width = 100, Height = 50 };
Button buttonCancel = new Button() { Width = 100, Height = 50 };

    public void method1(DataGridView dataGridView1)
    {
        foreach (DataGridViewRow row in dataGridView1.Rows)
        {

            if ((string)row.Cells[2].Value == ("1"))
            {
                row.DefaultCellStyle.ForeColor = Color.Green;
            }

            else if ((string)row.Cells[2].Value == ("2"))
            {
                row.DefaultCellStyle.ForeColor = Color.Blue;
                dataGridView1.Controls.Add(buttonOk);
                dataGridView1.Controls.Add(buttonCancel);   
                //buttonOk.Location = new Point(00, 74);
            }
            else if ((string)row.Cells[2].Value == ("3"))
            {
               //do something
            }
        }
    }

1 个答案:

答案 0 :(得分:1)

您无法向DataGridView添加按钮。但是,您可以将列定义为DataGridViewButtonColumn。当然问题是按钮将显示在所有行中。您可以实现自定义DataGridViewButtonColumn,如此MSDN thread所示。使用自定义按钮列,您现在可以根据需要隐藏按钮。