Results 1 to 2 of 2

Thread: DataGridView won't show my Data

  1. #1
    StevenAndries is offline VB.NET Forum Newbie
    .NET Framework
    .NET 2.0 (VS 2005)
    Join Date
    Feb 2007
    Posts
    2
    Reputation
    0

    DataGridView won't show my Data

    Hello community,

    I'll start like a lot of people start their threads: I'm new to programming.

    Anyway, I've been trying to create a program that reads tab delimited text files and shows the data in a DataGridView (and later on, I'll have to copy the DataSet data to a DataBase.. but those are problems for later).

    Anyway, I have my form with a DataSet dsFile, a DataGridView DataGridView1 and a MenuStrip MenuStrip1.
    My form holds the following Code:

    Code:
        Private Sub TextFileLadenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextFileLadenToolStripMenuItem.Click
            Dim myStream As IO.Stream = Nothing
            Dim dtTable As DataTable = dsFile.Tables.Add("Artikels")
    
            'Alle kolommen toevoegen aan DataSet
            dtTable.Columns.Add("Description")
            dtTable.Columns.Add("ArtId")
            dtTable.Columns.Add("PartID")
            dtTable.Columns.Add("Class1")
            dtTable.Columns.Add("Class2")
            dtTable.Columns.Add("Class3")
            dtTable.Columns.Add("PublisherName")
            dtTable.Columns.Add("Version")
            dtTable.Columns.Add("Language")
            dtTable.Columns.Add("Media")
            dtTable.Columns.Add("Trend")
            dtTable.Columns.Add("PriceGroup")
            dtTable.Columns.Add("PriceCode")
            dtTable.Columns.Add("LP_Bef")
            dtTable.Columns.Add("DE_Bef")
            dtTable.Columns.Add("D1_Bef")
            dtTable.Columns.Add("D2_Bef")
            dtTable.Columns.Add("LP_Eur")
            dtTable.Columns.Add("DE_Eur")
            dtTable.Columns.Add("D1_Eur")
            dtTable.Columns.Add("D2_Eur")
            dtTable.Columns.Add("StockIndication")
            dtTable.Columns.Add("BackorderDate")
            dtTable.Columns.Add("ModifDate")
            dtTable.Columns.Add("EanCode")
    
    
    
            Dim fileOpen As OpenFileDialog = New OpenFileDialog
            fileOpen.InitialDirectory = "c:\"
            fileOpen.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"
            fileOpen.FilterIndex = 2
            fileOpen.RestoreDirectory = True
    
            If fileOpen.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
                Try
                    myStream = fileOpen.OpenFile()
                    If (myStream IsNot Nothing) Then
    
                        ' Stream lezen
                        Using MyReader As New Microsoft.VisualBasic.FileIO.TextFieldParser(fileOpen.FileName.ToString)
                            MyReader.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.Delimited
                            MyReader.Delimiters = New String() {vbTab}
                            Dim currentRow As String()
                            'Loop door alle velden
                            'Indien corrupte lijn, geef error weer en doe door met parsen 
                            While Not MyReader.EndOfData
                                Try
                                    currentRow = MyReader.ReadFields()
                                    ' Include code here to handle the row.
                                    dtTable.Rows.Add(currentRow)
                                Catch ex As Microsoft.VisualBasic.FileIO.MalformedLineException
                                    MsgBox("Lijn " & ex.Message & " is fout.  Wordt overgeslagen")
                                End Try
                            End While
                            'refresh DataGridView
                            DataGridView1.DataSource = dsFile.Tables("Artikels")
                            DataGridView1.Refresh()
                        End Using
    
    
                    End If
                Catch Ex As Exception
                    MessageBox.Show("Kan bestand niet lezen. Error bericht: " & vbCrLf & Ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
                Finally
                    'Dubbelchecken voor de zekerheid dat we geen exception hebben gekregen bij het openen
                    If (myStream IsNot Nothing) Then
                        myStream.Close()
                    End If
                End Try
            End If
        End Sub
    My problem: whenever I load the Text File, it doesn't do anything.. It just hangs for a second or two, but that's it.

    Anyone any ideas?

  2. #2
    StevenAndries is offline VB.NET Forum Newbie
    .NET Framework
    .NET 2.0 (VS 2005)
    Join Date
    Feb 2007
    Posts
    2
    Reputation
    0
    The problem is here:
    Code:
     
                            'refresh DataGridView
                            DataGridView1.DataSource = dsFile.Tables("Artikels")
                            DataGridView1.Refresh()
    Changed it to:

    Code:
     
                            'refresh DataGridView
                            DataGridView1.DataSource = dtTable
                            DataGridView1.Refresh()
    Still the same problem..

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Harvest time tracking