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
247 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
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
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

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
groupNoAdj 7 116
Rubik's Cube Code for Effective Presentation 3 77
ejb example issues 3 55
Starting to use Git with Visual  Studio Online 1 26
Whether you've completed a degree in computer sciences or you're a self-taught programmer, writing your first lines of code in the real world is always a challenge. Here are some of the most common pitfalls for new programmers.
In this post we will learn how to make Android Gesture Tutorial and give different functionality whenever a user Touch or Scroll android screen.
An introduction to basic programming syntax in Java by creating a simple program. Viewers can follow the tutorial as they create their first class in Java. Definitions and explanations about each element are given to help prepare viewers for future …

730 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