vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: auf datatable in Privat sub zugreif 
Autor: michel der vb lernt
Datum: 15.11.07 22:59

Hallo

hier mal der Code zum einlesen und das Dataset/Datatable zu füllen.
 Public Sub Button6_Click(ByVal sender As System.Object, ByVal e As _
   System.EventArgs) Handles Button6.Click
 
 
        Dim Trennzeichen As String = (";"c)
        Dim ZeilenNr As Integer
 
        Dim Spalten() As String                         ' Dynamischer Array für 
        ' Split
 
        Dim Zeile As String
 
 
 
        Dim ds As DataSet
 
        Dim dt As DataTable
 
        Dim dr As DataRow                               ' Datenzeile
 
 
        Dim sr As New IO.StreamReader("D:\Text/temps.txt")
 
        ' DataSet und DataTable anlegen
 
        ds = New DataSet("ItsB")
 
        dt = New DataTable("AusTextdatei")
 
 
        dt.Columns.Add("Date")
        dt.Columns.Add("D_temp")
        dt.Columns.Add("Rain")
        dt.Columns("Rain").DataType = GetType(Double)
        dt.Columns.Add("ET")
        dt.Columns.Add("Tempsumm")
 
 
        ' *** Eingabe-Datei lesen bis Dateiende und DataTable füllen
        'Dim ersteZeile As String = sr.ReadLine
        If CheckBox1.Checked = True Then
            Zeile = sr.ReadLine
        End If
 
        ZeilenNr = 0
 
        'Zeile = sr.ReadLine ' erste Zeile einlesen da Leerzeile
        Do Until sr.EndOfStream
 
            Zeile = sr.ReadLine                         ' Zeile lesen
 
            ZeilenNr += 1
 
            ' *** Zeile Splitten
 
            Spalten = Zeile.Split(";"c)         ' Splitten
 
            AnzahlSpalten = Spalten.Length            ' Anzahl der Teilstücke 
            ' festhalten
 
            'TextBox1.Text = AnzahlSpalten
 
 
            If ZeilenNr = 1 Then                        ' Nur für die 1. Zeile 
            ' durchlaufen
 
                ' *** Test ob 1. Zeile überhaupt ein Trennzeichen enthält
 
                If Zeile.Contains(Trennzeichen) = False Then
 
                    MessageBox.Show("1. Zeile entspricht nicht der notwendigen" & _
                      "Formatierung", "Abruch")
 
                    sr.Close()
 
                    Exit Sub
 
                End If
 
            End If
            If Zeile = Nothing Then
                Exit Do
            End If
            'Bei jeder neuen Zeile die Spaltenwerte aus der Eingabedatei der 
            ' DataRow-Zeile hinzufügen
 
            dr = dt.NewRow ' Leere DataRow-Zeile erstellen
 
            For I As Integer = 0 To AnzahlSpalten - 1
 
                dr.Item(I) = Spalten(I)  ' Spalte mit Wert füllen
 
            Next
 
            dt.Rows.Add(dr) ' Zeile an die DataTable hängen
 
        Loop
 
        ds.Tables.Add(dt)  ' DataTable an den DataSet hängen
 
        Dim anzahl As String = dt.Rows.Count.ToString
        Dim date1 As Date = dt.Rows(0).Item(0).ToString
        Dim date2 As Date = dt.Rows(anzahl - 1).Item(0).ToString
        Dim res As TimeSpan = date2 - date1
        TextBox2.Text = res.Days & " " & dt.Rows.Count.ToString & " " & anzahl _
          - 1
 
 
        TextBox1.Text = dt.Rows.Count.ToString() & " Zeilen"
 
 
        'DataSet / DataTable an DataGridView binden
        Dim dgv_Anzeigen As DataGridView
        dgv_Anzeigen = DataGridView2
 
        dgv_Anzeigen.DataSource = ds                    ' DataSet zuordnen
 
        dgv_Anzeigen.DataMember = "AusTextdatei"        ' Name der DataTable im 
        ' DataSet
 
 
 
        ' *** Anwender darf keine Zeile hinzufügen oder löschen
 
        dgv_Anzeigen.AllowUserToAddRows = False
 
 
 
        dgv_Anzeigen.AllowUserToDeleteRows = False
 
 
 
        ' *** Anwender darf keine Spalten vertauschen
 
        dgv_Anzeigen.AllowUserToOrderColumns = False
        dgv_Anzeigen.Columns(2).Visible = False
 
        dgv_Anzeigen.Columns(3).Visible = False
 
        ' Daten an Combobox binden
        binding1 = New BindingSource()
        binding2 = New BindingSource()
        binding1.DataSource = dt
        ComboBox1.DataSource = binding1
        ComboBox1.DisplayMember = "Date"
 
        'binding2.DataSource = dt
        'ComboBox2.DataSource = binding2
        'ComboBox2.DisplayMember = "Date"
 
    End Sub
Hier geht es weiter aber wie kann ich auf die Datatable zugreifen irgendwas mache ich falsch oder deklariere ich es falsch.


 Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As _
   System.EventArgs) Handles Button5.Click
        binding2 = New BindingSource()
 
        binding2.DataSource = Me.binding1
        ComboBox2.DataSource = binding2
        ComboBox2.DisplayMember = "Date"
 
 
        '= New System.Data.DataTable("Austextdatei")
        Dim dt1 As DataTable = New System.Data.DataTable("Austextdatei")
 
        TextBox3.Text = (Format(dt1.Compute("sum(Rain)", ""), "0.00"))
 
    End Sub
Wäre Nett wenn Jemand mir den Vorgang näherbringen könnte.

Danke im voraus

Gru?

Michael

blutiger Anf?nger in der Programierung.

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
auf datatable in Privat sub zugreif886michel der vb l...15.11.07 19:13
Re: auf datatable in Privat sub zugreif631MrRAP15.11.07 20:17
Re: auf datatable in Privat sub zugreif646michel der vb l...15.11.07 22:59
Re: auf datatable in Privat sub zugreif543Melkor16.11.07 07:57

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel