2010-12-31 4 views
2

ich eine Datagridview erstellt habe wie folgt auf die Schaltfläche klickenWarum eine neue Zeile hinzugefügt wird, wenn dynamisch erstellt Checkbox Spalte klicken auf

private void button1_Click(object sender, EventArgs e) 
    { 
     if (dataGridView1.Columns.Contains("column1") && dataGridView1.Columns.Contains("chk")) 
     { 

     } 
     else 
     { 
      DataGridViewCheckBoxColumn chk = new DataGridViewCheckBoxColumn(); 
      //chk.ReadOnly = true; 
      chk.Name = "chk"; 
      chk.DisplayIndex = 0; 
      chk.Frozen = true; 
      chk.HeaderText = "check"; 
      dataGridView1.Columns.Add(chk); 
      DataGridViewTextBoxColumn column1 = new DataGridViewTextBoxColumn(); 
      column1.ReadOnly = true; 
      column1.Name = "column1"; 
      column1.HeaderText = "my column name"; 
      dataGridView1.Columns.Add(column1); 
      DataGridViewTextBoxColumn column2 = new DataGridViewTextBoxColumn(); 
      column2.ReadOnly = true; 
      column2.Name = "column2"; 
      column2.HeaderText = "my column name1"; 
      dataGridView1.Columns.Add(column2); 
     } 
    } 

Aber wenn ich eine Zeile auf das Kontrollkästchen klicken wird automatisch erstellt, warum ist es passiert ..

Antwort

3

ist dies, weil die Eigenschaft AllowUserToAddRows standardmäßig true ist.

gesetzt

dataGridView1.AllowUserToAddRows = false; 

und nach Spalten hinzufügen. fügen Sie eine neue Zeile zu dataGridView1

dataGridView1.Rows.Add(); 
+0

Kleine hep, wenn ich auf das Kontrollkästchen klicken würde Ich mag, dass bestimmte Zeile wählen u kann mir sagen, wie – Dotnet

+0

bekam die Antwort :) – Dotnet

Verwandte Themen