Ich habe gerade angefangen, auf C# und sql zu arbeiten, ich suchte, aber ich konnte keine Lösung für mein Problem finden, ich hoffe, jemand wird mir helfen. Ich habe eine DataGridView
auf dem Formular, das dynamisch erstellt wird. Ich bekomme 8 Spalten von der Datenbank mit LINQ zu SQL. aber ich erstelle auch einen anderen Spaltennamen als "Berechnung", die die anderen Spalten Daten verwendet. Meine Frage ist, dass ich meine Tabelle basierend auf Berechnungsspalte filtern muss. Im Folgenden Teil meines Code:Dynamic DataGridView Filterung C#
// get datas from database.
var query = _context.Database.SqlQuery<my_Type>("my_stored_procedure");
var binding = new BindingList<my_Type>(query.ToList());
bsMasterPrimary.DataSource = binding;
myDataGridView.DataSource = bsMasterPrimary;
//filter
DataView dv = new DataView();
dv = myDataGridView.DataSource as DataView;//dv always comes null
dv.RowFilter = string.format("Calculation <0");
// dt = (DataTable)((BindingSource)this.dgvAmazonFBAInventory.DataSource).DataSource;
habe ich versucht, dies auch, aber es gab einen Fehler:
Unable to cast object of type 'System.ComponentModel.BindingList`1[MyProject.MyType]' to type 'System.Data.DataTable'. }
ich versuchte, meine Datagridview Dataview zu werfen, aber ich Paar scheiterte times.How kann ich das tun? ich versucht, Dataview dv = MyDataGridView .DataSource a s DataView Aber es hat nicht funktioniert, danke. – mmcdln
Siehe diesen Thread http://stackoverflow.com/questions/6295161/how-to-build-a-datatable-from-a-datagridview – Shon
Grundsätzlich DataTable dt = (DataTable) datagridview.datasource – Shon