Announcement

Collapse
No announcement yet.

DataGridView Filter aus Textbox und DropDown

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • DataGridView Filter aus Textbox und DropDown

    Hallo,

    ich muss mich grad frisch in VB.Net einarbeiten und habe folgendes Problem.

    Ich habe über einen BindingSource an eine Oracle Datenbank Tabelle Daten
    in ein DataSet geladen. Diese Daten sind jetzt über ein DataGridView in der Tabelle sichtbar. Gelöst zumeist über den Designer von Visual Studio .net

    Soweit so gut. Daten sind vorhanden und sauber sortiert.

    Nun das Problem: Ich habe über dem DataGridView eine TextBox sowie ein DropDown (ebenfalls mit Daten aus einer Oracle DB). Diese Textboxen sollen über einen Button die Ausgabe im DataGridView filtern.

    Versucht habe ich das schon mit:

    [highlight=vbnet]Private Sub Button_Finden_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button_Finden.Click

    ZSDBindingSource.Filter = "KUNDENNUMMER LIKE '%" + TextBox_Kundennummer.Text + "%'"

    End Sub[/highlight]

    Hier erhalte ich allerdings generell eine External Exception bzw. eine EAccessViolation. Warum kann ich mir nicht erklären.

    Ich habe geprüft ob die einzelnen Spalten readonly = false stehen sowie das DataGridView ebenfalls in den Eigenschaften auf readonly = false steht.

    Was mache ich falsch?

    Bin grade erst neu im Thema und suche dringend Unterstützung.

    Vielen Dank im Vorraus,
    Jan
    Zuletzt editiert von Jastro; 18.11.2009, 09:34.

  • #2
    Keine Ahnung, was Du falsch machst, ich arbeite selten mit BindingSources. Aber Du hast innerhalb des Datasets ja dann auch eine DataTable (die Du im Grid anzeigst). Weise jetzt der Datasource des Grids eine View der DataTable zu:[highlight=vbnet]Dim dv AS New DataView(DataSet1.Tables("Tabelle"))
    DatGridView1.DataSource = dv
    dv.RowFilter = "Kundennummer LIKE '" + TextBox1.Text.Trim + "'[/highlight]Hab's aus dem Kopf geschrieben, daher weiß ich nicht genau, ob die Syntax so ganz genau stimmt, aber so mache ich es immer, und so funktioniert es.

    Dave

    Comment

    Working...
    X