In meinem Projekt lese ich eine Textdatei in ein Array.
Dieses übergebe ich an eine DataTable:
Dim vntArray As Array = Split(strText, Chr(10))
With mDT1 ' Public DataTable
.Columns.Add("Pos.", GetType(String))
.Columns.Add("Bezeichnung", GetType(String))
.Columns.Add("K", GetType(String))
.Columns.Add("Faktor", GetType(Double))
.Columns.Add("FN", GetType(Integer))
.Columns.Add("Wert 1", GetType(String))
.Columns.Add("Wert 2", GetType(String))
.Columns.Add("Wert 3", GetType(String))
.Columns.Add("Wert 4", GetType(String))
.Columns.Add("Wert 5", GetType(String))
.Columns.Add("Menge", GetType(Integer))
.Columns.Add("Einh.", GetType(String))
.Columns.Add("Stand", GetType(Integer))
.Columns.Add("Ergebnis", GetType(Integer))
.Columns.Add("AZ", GetType(Integer))
.Columns.Add("Filter1", GetType(String))
.Columns.Add("Filter2", GetType(String))
.Columns.Add("Filter3", GetType(String))
.Columns.Add("REB - Adresse", GetType(String))
.Columns.Add("erzeugt", GetType(Date))
.Columns.Add("geändert", GetType(Date))
.Columns.Add("Benutzer", GetType(String))
If UBound(vntArray) > 2 Then
For lngTeil = 3 To UBound(vntArray)
Dim Hilfsfeld = Split(vntArray(lngTeil), ";")
Dim DR As DataRow
DR = .NewRow
For i = 0 To UBound(Hilfsfeld)
DR.Item(i) = Hilfsfeld(i)
Next
.Rows.Add(DR)
Next
End If Daraus erzeuge ich ein DataView:
' DataView aus der DataTable erzeugen
dtView = New DataView(mDT1) und binde mein DataGridView daran:
Form1.DataGridView1.DataSource = dtView
Nun möchte ich im DataGridView nur die Datensätze sichtbar haben, deren String in Spalte0 ("Pos.") den String aus einer Inputbox enthält (später kommt der aus einem TreeView).
Zusätzlich sollen die Daten sortiert werden, und zwar:
1. nach Spalte 0 ("Pos.") aufsteigend (String)
2. nach Spalte 14 ("AZ") aufsteigend (Integer)
3. nach Spalte 18 ("REB - Adresse") aufsteigend (String)
Wie geht das?
Besten Dank im voraus
Gruß Christian
Danke für die Hilfe
Gruß Christian |