我有一个向导控件,在此我添加一个包含一个简单表的用户控件,其中包含一些基于用户输入他们有多少孩子的输入字段。例如:你有多少个孩子,所以我添加了用户控件ascx,该用户控件基于该循环 ,进入我的向导的第5步,这也位于母版页中。FindControl没有在向导控件中找到dynamcily添加的用户控件
然后我使用findcontrol来尝试获取这些输入框,这样我就可以将数据保存到我的数据库中,即使用户控制可见并在发布后重新创建页面加载后,我仍然可以将数据保存到我的数据库。
任何帮助非常感谢。 查找控制按钮: 保护小组的button1_Click(BYVAL发件人为对象,BYVALË作为System.EventArgs)把手Button1.Click
Dim numbchildren As Integer = CInt(Howmanychildren.Text)
For i As Integer = 1 To numbchildren - 1
Dim textbox As TextBox = TryCast(Me.Wizard1.FindControl("WizardStep5").FindControl("Minor_1_Child_Name"), TextBox)
'Dim textbox2 As TextBox = TryCast(Me.Wizard1.FindControl("WizardStep5").FindControl("Howmanychildren"), TextBox)
If textbox IsNot Nothing Then
Response.Write("Found TextBox1 <br>")
Dim val As String = textbox.Text
Response.Write(val & "<br>")
Else
Response.Write("not found" & "<br>")
End If
' Insert into DB
'SaveValueToDatabase(val)
Next
End Sub
用户控制附加功能上下拉:
保护小组Doyouhavechildren_SelectedIndexChanged(BYVAL发件人为对象,BYVALË作为System.EventArgs)把手Doyouhavechildren.SelectedIndexChanged
Dim numbchildren As Integer = CInt(Howmanychildren.Text)
Dim cnt As Integer = 1
'Panel1.Controls.Clear()
Select Case Doyouhavechildren.SelectedIndex
Case 0
ViewState.Add("Doyouhavechildren", numbchildren)
Do While cnt <= numbchildren
Dim uc As Web.UI.UserControl = DirectCast(Page.LoadControl("MinorChild.ascx"), Web.UI.UserControl)
uc.ID = "Minor_" + cnt.ToString()
Wizard1.ActiveStep.Controls.Add(uc)
cnt = cnt + 1
Loop
Exit Select
Case 1
Exit Select
End Select
End Sub
用户控制:
<%@控制语言= “VB” AutoEventWireup = “假” 的CodeFile = “MinorChild.ascx.vb” 继承= “MinorChild” %>
名称
年龄
SS#
DOB
在howmanychildren字段是静态