Solved

Finding which Row holds a certain string in one of it's cell in a datatable. VB.NET

Posted on 2006-06-16
8
252 Views
Last Modified: 2010-04-17
I need to determine which row has a value in one of its cells in a specific column with a datatable. The value is known before hand as also is the column. The reason is I need to alter a value within the same row only two columns over. I'd like this in vb.net thanks.
0
Comment
Question by:JPERKS1985
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
8 Comments
 
LVL 20

Expert Comment

by:alainbryden
ID: 16925471
Unless it's a DOA, where you can do a query, just do the plain old loop

For I as Integer = 0 to myarray.rows
      if myarray.cells(I, KnownColumn) = KnownValue then Exit For
Next I

myarray.cells(I, KnownColumn + 2) = AlteredValue

Not too tough at all see :)
0
 
LVL 20

Expert Comment

by:alainbryden
ID: 16925476
I appologize, I forgot one crucial dimension:

For I as Integer = 0 to myarray.rows
      if myarray.cells(I, KnownColumn).value = KnownValue then Exit For
Next I

myarray.cells(I, KnownColumn + 2).value = AlteredValue



(forgot the .value)

Cheers JPerks
0
 
LVL 1

Author Comment

by:JPERKS1985
ID: 16925481
hmm says 'cells' is not a member of 'System.Data.DataTable'. I'm very new to this do you know whats wrong?
 This is how dtform is declared     Public dtForm As DataTable
0
Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

 
LVL 20

Expert Comment

by:alainbryden
ID: 16925544
I'm sorry I thought you were using an msflexigrid. As long as you aren't doing any threading, which you shouldn't be as a new program, you should change it so that you are using a grid instead of a System.Data.DataTbale. These deal with the raw memory stored in ram, and get pretty complicated. They are the foundation but you don't need to deal directly with them. It would be like trying to make a bitmap picture in notepad by setting all the individual pixels when you could draw it using paint. I would look at other dataTable types, like an MSFlexiGrid or a simple 2 dimentional array to store your data. Most things you would normally export to recognise both these formats, such as Excel and DAO recordsets.
0
 
LVL 1

Author Comment

by:JPERKS1985
ID: 16927399
haah it is threaded.
0
 
LVL 20

Accepted Solution

by:
alainbryden earned 500 total points
ID: 16927656
Ahh I see, Well then I have no personal experience, but looking through this tutorial, it seems to give a pretty good outline of using the system data table.

http://smrtx.com/RS/asp_datagrid.htm
0
 
LVL 1

Author Comment

by:JPERKS1985
ID: 16928303
Created a solution


        Dim cName As TextBox = CType(sender, System.Windows.Forms.TextBox)
        cName.Name = CType(sender, System.Windows.Forms.TextBox).Name


        Dim DRow As DataRow
     
        For Each DRow In dtForm.Rows
            If DRow(2).Item = cName.Name Then
                DRow(8).Item = cName.Text
                TMEventInfoParseGrid.DataSource = dtForm
            End If
        Next

Found the solution with the help of a book.

0
 
LVL 1

Author Comment

by:JPERKS1985
ID: 16928325
Sorry this one is correct



     
        Dim cName As TextBox = CType(sender, System.Windows.Forms.TextBox)
        cName.Name = CType(sender, System.Windows.Forms.TextBox).Name


        Dim DRow As DataRow
     
        For Each DRow In dtForm.Rows

            If DRow.Item(2) = cName.Name.ToString Then
                DRow.Item(8) = cName.Text
                TMEventInfoParseGrid.DataSource = dtForm
            End If
        Next
0

Featured Post

[Webinar] Learn How Hackers Steal Your Credentials

Do You Know How Hackers Steal Your Credentials? Join us and Skyport Systems to learn how hackers steal your credentials and why Active Directory must be secure to stop them. Thursday, July 13, 2017 10:00 A.M. PDT

Question has a verified solution.

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

Displaying an arrayList in a listView using the default adapter is rarely the best solution. To get full control of your display data, and to be able to refresh it after editing, requires the use of a custom adapter.
Whether you’re a college noob or a soon-to-be pro, these tips are sure to help you in your journey to becoming a programming ninja and stand out from the crowd.
Simple Linear Regression
Starting up a Project

691 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