2014-10-31 58 views
1

我試圖將兩個按鈕添加到具有值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

您不能將按鈕添加到DataGridView。但是,您可以將列定義爲DataGridViewButtonColumn。當然問題是按鈕會顯示在所有行中。您可以實施自定義DataGridViewButtonColumn,如MSDN thread所示。使用您的自定義按鈕列,您現在可以根據需要隱藏按鈕。

+0

這看起來是這個問題的一個很好的選擇。 Ty MikeH – Andre 2014-11-03 19:55:04