Udostępnij za pośrednictwem


Dodawanie danych do elementu DataTable

Po utworzeniu obiektu DataTable i zdefiniowaniu jej struktury przy użyciu kolumn i ograniczeń można dodać nowe wiersze danych do tabeli. Aby dodać nowy wiersz, zadeklaruj nową zmienną jako typ DataRow. Podczas wywoływania NewRow metody jest zwracany nowy obiekt DataRow. Tabela DataTable tworzy następnie obiekt DataRow na podstawie struktury tabeli, zgodnie z definicją w obiekcie DataColumnCollection.

W poniższym przykładzie pokazano, jak utworzyć nowy wiersz, wywołując metodę NewRow .

Dim workRow As DataRow = workTable.NewRow()  
DataRow workRow = workTable.NewRow();  

Następnie można manipulować nowo dodanym wierszem przy użyciu indeksu lub nazwy kolumny, jak pokazano w poniższym przykładzie.

workRow("CustLName") = "Smith"  
workRow(1) = "Smith"  
workRow["CustLName"] = "Smith";  
workRow[1] = "Smith";  

Po wstawieniu danych do nowego wiersza metoda Add służy do dodawania wiersza do DataRowCollectionelementu , pokazanego w poniższym kodzie.

workTable.Rows.Add(workRow)  
workTable.Rows.Add(workRow);  

Możesz również wywołać metodę Add , aby dodać nowy wiersz, przekazując tablicę wartości, typizowane jako Object, jak pokazano w poniższym przykładzie.

workTable.Rows.Add(new Object() {1, "Smith"})  
workTable.Rows.Add(new Object[] {1, "Smith"});  

Przekazywanie tablicy wartości, typizowanej jako Obiekt, do metody Add tworzy nowy wiersz wewnątrz tabeli i ustawia wartości kolumn na wartości w tablicy obiektów. Należy pamiętać, że wartości w tablicy są dopasowywane sekwencyjnie do kolumn w zależności od kolejności, w jakiej są wyświetlane w tabeli.

Poniższy przykład dodaje do nowo utworzonej tabeli Customers 10 wierszy.

Dim workRow As DataRow  
Dim i As Integer  
  
For i = 0 To 9  
  workRow = workTable.NewRow()  
  workRow(0) = i  
  workRow(1) = "CustName" & I.ToString()  
  workTable.Rows.Add(workRow)  
Next  
DataRow workRow;  
  
for (int i = 0; i <= 9; i++)
{  
  workRow = workTable.NewRow();  
  workRow[0] = i;  
  workRow[1] = "CustName" + i.ToString();  
  workTable.Rows.Add(workRow);  
}  

Zobacz też