[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1629
  • Last Modified:

How to access dynamically created controls nested in an asp.net table

I have an asp.net  table <asp:table> </asp:table>, that is created dynamically when the user clicks a button.  the table has a row added to it with each click.  I have the data posting back correctly, and now need to total the values.  I know I can use the find control option, however, how do I access the data inside the table?  I have the code listed in a snippet below.

But it is only finding HeaderRows, and TableRows.  I know there is a TableRows.{cellcollection name of some sort), but am unaware as to how to obtain it.  
What I ultimately need:
The rows consist of :
QTY / ITEM / Amount / Extended cost(Amount * Qty)

The find control should search through the table and find the QTY amount, place it into an array.  Find the Amount textbox, place that into an array.  Once both arrays are filled I will create a function to add them appropriately...which is simple...it is just getting the data from the table row that I need help with.
For start = 1 To count
            For Each ctr In table.Rows
                If TypeOf ctr Is TextBox Then
                    If CType(ctr, TextBox).ID.ToString = "txtQuantity" & start.ToString Then
                        Select Case CType(ctr, TextBox).Text
                            Case Is = ""
                                qty = 0
                                Quantities(start - 1) = "0.00"
                            Case Is <> ""
                                Quantities(start - 1) = CType(ctr, TextBox).Text
                        End Select
                    ElseIf CType(ctr, TextBox).ID.ToString = "txtItemCost" & start.ToString Then
                        Select Case CType(ctr, TextBox).Text
                            Case Is = ""
                                ttl = 0
                                Amounts(start - 1) = "0.00"
                            Case Is <> ""
                                Amounts(start - 1) = CType(ctr, TextBox).Text
                        End Select
                    End If
                Else
                End If
            Next
        Next

Open in new window

0
JaCrews
Asked:
JaCrews
1 Solution
 
Bob LearnedCommented:
Are you using FindControl from the page or from the table?  FindControl only works for calls at the lowest naming container level, unless you program a recursive search function.

Bob
0
 
JaCrewsAuthor Commented:
Ended up solving the question myself....with the recursive function, so..since the points are unlimited, and it was in effect the right answer....Congrats Learned One!
0

Featured Post

Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now