2016-06-14 11 views
0

Ich erstelle ein Projekt in C# -Formular. Was ich versuche, ist, neue Zeilen in der Datenquellen-Datenrasteransicht hinzuzufügen. Das Problem besteht jedoch darin, dass der Fehler besagt, dass das Hinzufügen neuer Zeilen nicht programmgesteuert im Datenraster der Datenquelle hinzugefügt werden kann.Alternative Möglichkeiten beim Hinzufügen neuer Zeilen in der Datasource-Datenrasteransicht

Hier ist meine Methode beim Abrufen der Daten und Übertragen in der Datenrasteransicht.

public DataTable GetData(ClassName classVar){ 
    SqlCommand cmd = new SqlCommand(); 
    cmd.Connection = ...; // My connection string 
    cmd.CommandType = CommandType.Text; 
    cmd.CommandText = ...; // My Query 

    DataTable table = new DataTable(); 
    table = ...ExeReader(cmd); 
    return table; 
} 

Die Codes in meiner Form

DataTable getDataTable; 
getDataTable = ClassQuery.GetData(classVar); 
dgv_details.DataSource = getDataTable; 

Und das ist meine Schaltfläche Hinzufügen

dgv_details.Rows.Add(txtBox1.Text,txtBox2.Text); 

Was die alternativen Möglichkeiten sind Daten innerhalb des datasourced Datagridview in hinzufügen? Vielen Dank im Voraus.

+1

sie In dem GetDataTable? – BugFinder

+0

füge dich neu in die DataTable ein getDataTable –

+0

Was meinst du mit @ Dr.Stitch? Ich werde diesen Code "dgv_details.Rows.Add()" hinzufügen? –

Antwort

1

Versuchen Sie den folgenden Code. Fügen Sie zuerst eine Zeile zur Datentabelle hinzu und binden Sie diese Tabelle dann an datagridview.

DataRow dr = datatable1.NewRow(); 
    dr[0] = "HAI"; // add data in first column of row 
    datatable1.Rows.InsertAt(dr, 0); // insert new row at position zero 
    datatable1.Rows.Add(dr); // addnew row at last 
+0

Das Problem ist, die Zeile wird hinzugefügt, nachdem die Datenquelle in der Datagridview angezeigt wurde. Also, das Add NewRow wird nicht nur ein sondern mehrere NewRow sein. –

+0

NewRow wird nicht angezeigt. Nur NewRowIndex ... –