Ich habe eine GridView, mit der Sie die Werte in jeder Spalte, in jeder Zeile, die ganze Zeit bearbeiten können. Der Benutzer gibt alle Änderungen ein, klickt einmal auf Speichern und alle Änderungen werden ausgeführt.Hinzufügen einer neuen Zeile zu GridView ohne DataBind
Der Benutzer muss auch in der Lage sein, auf die Schaltfläche Neu zu klicken, eine neue Zeile in der GridView erscheinen zu lassen (yep, muss in der GridView erscheinen), geben Sie die gewünschten Daten ein, klicken Sie auf Speichern und alle Änderungen haben Gehe zur Datenbank.
Jetzt. Hier ist der Benutzerfall, der mich anspricht: Ein Benutzer kommt auf der Seite an, nimmt mehrere Änderungen an mehreren vorhandenen Zeilen vor und muss dann eine neue Zeile hinzufügen, Daten in die neue Zeile eingeben, auf Speichern klicken und alle Änderungen in die Datenbank übernehmen .
Die einzige Möglichkeit, die ich gesehen habe, um eine neue leere Zeile hinzuzufügen, besteht darin, die GridView neu zu binden, was bedeutet, dass alle ihre Änderungen verloren gehen. Das ist offensichtlich nicht gut.
Also meine Frage wäre: Was sind einige Ansätze zum Hinzufügen einer neuen, leeren, editierbaren Zeile zu einem GridView, ohne das GridView erneut zu binden?
Das einzige, was ich mir vorstellen kann, wäre, auf der New Buttons klicken Ereignis, saugen alle Daten aus der GridView (einschließlich der Benutzer mögliche Änderungen), speichern Sie in ViewState (oder was auch immer), fügen Sie die neue Zeile, füllen Sie das Raster neu. Dies scheint mir ein bisschen hacky zu sein, aber ich sollte ViewState in GridView deaktivieren.
Irgendwelche Ideen?