BindingSource



  • Hi Community :xmas1:

    Mein Problem ist folgendes..(ich arbeite gerade an Testfunktionen für einen firmeninternen SQL Interpreter)

    Ich habe Daten in einem DataGridView. Darunter eine InputTextBox sowie eine ResultTextBox. Ich möchte SQL Statements in die InputTextBox schreiben (die anhand des SQL Interpreters) ausgewertet UND mit den Daten des DataGridView verglichen werden sollen.

    Meine Fragen sind:
    Wie kann ich generell Daten aus einem DataGridView mit Input einer TextBox vergleichen!??? Der TextBox.Text muss die Daten des GridView kennen.

    Bsp des GridView (es sind KEINE Daten aus einer SQL Datenbank sondern reiner Text der im GridView geaddet wurde)

    NAME ORT PLZ
    Mr X | Musterdorf | 123
    Fr Y | Musterstadt | 321

    Wenn ich jetzt in die Input TextBox "WHERE NAME = 'Mr X'" soll dies mit dem SQL Interpreter ausgewertet werden und TRUE returnen

    Die Testfunktion des SQL Interpreters hat die Parameter (string text, DataRow row)

    text = der TextBox.Text
    DataRow = die current DataRow

    Ein Kollege sagte mir ich muss mit 'Bindingsource' zusammenarbeiten, nur hab ich davon wenig Ahnung..und dann sollte ich noch einen Cast auf ein DataRow ausführen umso die CurrentDataRow zu bekommen?

    Ich wäre sehr dankbar für Tipps und Ratschläge

    Liebe Grüße

    T.



  • Ich würde mir eine Klasse bauen welche die Properties NAME, ORT, PLZ besitzt, als Datasource des Datatgridview ein IList<meineKlasse> dranhängen und den Interpreter so realisieren dass er über die Datasource des Gridviews mit Linq-Ausdrücken arbeitet.



  • wir können den Interpreter nicht so einfach umschreiben.. es muss doch eine Möglichkeit geben DataGridView Daten mit TextBox Input zu vergleichen 😕

    wenn ich es über eine DataTable mache und diese als bindingsource angebe und dann die diese source als datagridview datasource angebe? dann muss ich es noch irgendwie zu einer datarow casten..



  • Jaklar, iteriere doch einfach alle DataRows durch und vergleiche die Inhalte. ist nur etwas unssicher, da da alles objekt drinne ist. An deiner stelle würde ich mir ein generisches interface schreiben, was dir die möglichkeit gibt die daten des datagrids dort reinzuhauen und dann an das grid zu binden. dann würde ich noch iequatable<T> überschreiben und mir hashcodes bauen. die dann zu vergleichen sollte kein hit sein.



  • ok danke :xmas1:


Anmelden zum Antworten