2012-11-13 26 views
6

Dodałem kolumnę checkbox i kolumnę pola tekstowego w widoku datagrid. jak dodać wiersze ręcznie w kolumnie textbox.Ręczne dodawanie wierszy do datagridview

To powinno być tak:

checkbox | textbox 
............................ 
checkbox | item1 
checkbox | item2 
checkbox | item3 
checkbox | item4 

Oto kod do wyboru i pole tekstowe na DataGridView

public void loadgrid() 
{ 
    DataGridViewCheckBoxColumn checkboxColumn = new DataGridViewCheckBoxColumn(); 
    CheckBox chk = new CheckBox(); 
    checkboxColumn.Width = 25; 
    dataGridView1.Columns.Add(checkboxColumn); 

    DataGridViewTextBoxColumn textboxcolumn = new DataGridViewTextBoxColumn(); 
    TextBox txt = new TextBox(); 
    textboxcolumn.Width = 150; 
    dataGridView1.Columns.Add(textboxcolumn);  
} 
+0

referencje do 'chk' i' Obiekty txt nie robią nic w tym kodzie. – LarsTech

Odpowiedz

12

Można przekazać tablicę obiektów, który zawiera wartości, które należy wstawić do DataGridView w kolejności dodawania kolumn. Na przykład można użyć tego:

dataGridView1.Rows.Add(new object[] { true, "string1" }); 
dataGridView1.Rows.Add(new object[] { false, "string2" }); 

I można zbudować obiekt Array od co chcesz, tylko pamiętaj, aby pasować do typu (czyli wykorzystanie bool dla checkedColumn)

+0

działa idealnie. dzięki @nick – user1647667

6

Można użyć zbiór wierszy ręcznie wypełnić kontrolę DataGridView zamiast wiązania go do źródła danych.

this.dataGridView1.Rows.Add("five", "six", "seven", "eight"); 
this.dataGridView1.Rows.Insert(0, "one", "two", "three", "four"); 

Spójrz na documentation

I można zrobić coś takiego też:

DataGridViewRow row = (DataGridViewRow)yourDataGridView.Rows[0].Clone(); 
row.Cells["Column2"].Value = "XYZ"; 
row.Cells["Column6"].Value = 50.2; 
yourDataGridView.Rows.Add(row); 

Zobacz this answer

Powiązane problemy