dropdownlist, textbox in datagrid dropdownlist_selectedindexchange event

C

CindyH

Hi
I'm using vs.net 2003.
I have a dropdownlist inside a datagrid.
I would like to be able to select a value from the dropdownlist and then
have a textbox which is also inside the datagrid filled with that value.

I'm calling OnSelectedIndexChanged="ddlGridMonth_SelectedIndexChanged" event
when an item from the dropdownlist is selected

I'm not sure of the code I should be using for this event.
Right now I'm trying something like this:


Dim ddl As DropDownList = CType(sender, DropDownList)

Dim dg As DataGrid = Me.FindControl("dgMonthlyReports")

' not getting anything in this textbox (nothing)

Dim txt As TextBox = CType(dg.FindControl("ReportMonth"), TextBox)

' getting value from dropdownlist

Dim ddlValue As Integer = ddl.SelectedItem.Value

' not getting value here because it doesn't seem to know about the textbox

Dim TextValue As String = txt.Text

If ddlValue <> 0 Then

txt.Text = ddlValue

End If


I'm getting the value of the dropdownlist, but not the textbox and then I
need to see if the dropdownlist value is something other then 0 and if so
write the value to the textbox.

Thanks,

CindyH
 
T

Teemu Keiski

Hi,

you probably mean something like this

Dim ddl As DropDownList = CType(sender, DropDownList)

'NOTE THIS LINE
Dim gridItem As DataGridItem = CType(ddl.NamingContainer, DataGridItem)

Dim txt As TextBox = CType(gridItem.FindControl("ReportMonth"), TextBox)
Dim ddlValue As Integer = ddl.SelectedItem.Value
Dim TextValue As String = txt.Text



Point is NamingContainer of DroPDownList returns the DataGridItem which
represents the row the DDL is on. So running FindControl to this, will get
you controls on the same row

I've exlained this in a blog post:

Understanding the naming container hierarchy of ASP.NET databound controls
http://aspadvice.com/blogs/joteke/a...-hierarchy-of-ASP.NET-databound-controls.aspx

-
Teemu Keiski
AspInsider, ASP.NET MVP
http://blogs.aspadvice.com/joteke
http://teemukeiski.net
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,992
Messages
2,570,220
Members
46,807
Latest member
ryef

Latest Threads

Top