Solved

Datagridview  **insert rows

Posted on 2007-12-03
3
1,990 Views
Last Modified: 2013-11-26
I am trying to populate a datagridview with rows obtained from a file.  
The file has rows broken up by a semi-colon.  The information i need populated in the cells of the datagridview are the values after the semicolon.

What my program does is read the lines of the code.  Then i am trying to remove from the input string all the values to the left of the semi-colon and then inputting that value into the datagridview row.  For some reason VB is telling me to create an instance of a "new" object.  I am not seeing why however.
DataGridView1.Rows.Add()    'ROW ADDED

            varcount = DataGridView1.Rows.Count  'MAX ROWS OF DATAGRIDVIEW

            For xvar As Integer = 0 To 5   'LOOP INPUT FILE

                Dim varstr  

                Dim line  'STRING CONTAINING INPUT

                Dim pos As Integer 'POSITION OF SEMI-COLON
 

                line = sr.ReadLine   'READS LINE

                pos = InStr(line, "; ")  'GETS POSITION OF SEMI-COLON

                varstr = line.Remove(0, pos)  '>>>>>ERROR HERE<<<<<

                DataGridView1.Rows(varcount - 1).Cells(xvar).Value = varstr  'INPUT COLUMN CELLS

            Next xvar

Open in new window

0
Comment
Question by:alexander001
  • 2
3 Comments
 
LVL 1

Accepted Solution

by:
aperion earned 250 total points
ID: 20401414
I'd try a couple of different things.  If you have to keep the code the way you have it then try removing the space after the semi-colon in this line:

pos = InStr(line, "; ")  'GETS POSITION OF SEMI-COLON

Declaring your varstr variable as an array allows you to use the split function.   If neither one of these will work for you then I'd try stepping through the code using breakpoints and see what the variables values are and which one if any is throwing the error.

DataGridView1.Rows.Add()    'ROW ADDED

        varcount = DataGridView1.Rows.Count  'MAX ROWS OF DATAGRIDVIEW

        For xvar As Integer = 0 To 5   'LOOP INPUT FILE

            Dim varstr() As String

            Dim line As String = ""  'STRING CONTAINING INPUT

            line = sr.ReadLine   'READS LINE

            varstr = line.Split(";")

            DataGridView1.Rows(varcount - 1).Cells(xvar).Value = varstr  'INPUT COLUMN CELLS

        Next xvar

Open in new window

0
 

Author Comment

by:alexander001
ID: 20403145
Still getting an error.  It's a weird one.  When i run it there's an immediate window that states " A first chance exception of type 'System.NullReferenceException' occured"

Plus when i run through the code i get the error "User the "new" keyword to create an object instance"

These messages come in on my original code at line:
           varstr = line.Remove(0, pos)
and when i use the suggested code for the string array at line:
           varstr = line.Split(";")

Any ideas?
0
 
LVL 1

Expert Comment

by:aperion
ID: 20405958
Set a breakpoint at that line and see which variales are nothing.
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

When trying to find the cause of a problem in VBA or VB6 it's often valuable to know what procedures were executed prior to the error. You can use the Call Stack for that but it is often inadequate because it may show procedures you aren't intereste…
A long time ago (May 2011), I have written an article showing you how to create a DLL using Visual Studio 2005 to be hosted in SQL Server 2005. That was valid at that time and it is still valid if you are still using these versions. You can still re…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…

919 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now