Solved

Add a textbox and other controls to a gridview

Posted on 2008-06-18
3
813 Views
Last Modified: 2013-11-07
All,

I am looking at adding a basket to a web page.  I have this working to a basic standard, but now want to add extra functionality to it.

At the moment I have the data held in a session array that i populate on the basket screen in a grid view.

I have populated the gridview with 6 columns .  The first 2 are not data assigned by the session variables but is a check box column called remove and a text box column called Tyres required that has a text box in.

The other columns are assigned by code (see snippet)

Basically I have three problems that i do not know how to do.

1.  Because I used the designer to add the first 2 columns and code the rest the designer columns appear first in the gridview when i would like them to appear at different stages.  How do I write the code to add a column and in that column have a text box and how do i do the same but for a check box?

2.  How do I then reference that columns text box or check box?  At the moment I loop through each row  and use this

Dim tb As TextBox = CType(r.FindControl("TextBox1"), TextBox)

Would this be different?

3.  On a different note i would possibly like to make something on the row happen if the check box is ticked.  Is there an event that says when a row is changed do something.  What would the code be say on the check box being checked i wanted the textbox column for this row only to be disabled, but still in the view?

Thanks for your help.
If Not IsPostBack Then

 

 

            Dim arr As String(,) = cartItems

 

            'Label1.Text = cartItemCount

 

            Dim t As New DataTable("salesOrder")

            t.Columns.Add("Part_Number")

            t.Columns.Add("Tyre_Size")

            t.Columns.Add("Aircraft")

            t.Columns.Add("Main_or_AUX")

 

            ' Loops around - 1 because it is a count not an array position

            For i As Integer = 0 To cartItemCount - 1

                t.Rows.Add(arr(i, 0), arr(i, 1), arr(i, 2), arr(i, 3))

            Next

 

            GridView1.DataSource = t

            GridView1.DataBind()

 

        End If

Open in new window

0
Comment
Question by:yo_daz_uk
  • 2
3 Comments
 

Author Comment

by:yo_daz_uk
Comment Utility
Any ideas?
0
 
LVL 12

Accepted Solution

by:
renjurdevan earned 310 total points
Comment Utility
0
 

Author Closing Comment

by:yo_daz_uk
Comment Utility
the answer did not really answer my question, but got me thinking a different way.  Basically you add your data bound fields in the grid designer, but you set there data field attributes in the columns collection to the name of the column you have created in code.

Also, I unticked auto generate fileds in the columns collection I think this helped.  Obviously this was only section 1 out of 3 the answer for but no one else is writing any comments.
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Suggested Solutions

Problem Hi all,    While many today have fast Internet connection, there are many still who do not, or are connecting through devices with a slower connect, so light web pages and fast load times are still popular.    If your ASP.NET page …
Today I had a very interesting conundrum that had to get solved quickly. Needless to say, it wasn't resolved quickly because when we needed it we were very rushed, but as soon as the conference call was over and I took a step back I saw the correct …
Access reports are powerful and flexible. Learn how to create a query and then a grouped report using the wizard. Modify the report design after the wizard is done to make it look better. There will be another video to explain how to put the final p…
When you create an app prototype with Adobe XD, you can insert system screens -- sharing or Control Center, for example -- with just a few clicks. This video shows you how. You can take the full course on Experts Exchange at http://bit.ly/XDcourse.

743 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

18 Experts available now in Live!

Get 1:1 Help Now