我有两个WebUser控件,它们根据上一页的用户输入多次动态添加到Webform。 WebUser控件中有一些文本框和下拉列表。我需要从WebUsercontrol的文本框中获取动态添加的值。我该怎么做?
答案 0 :(得分:1)
您应该将控件值公开为用户控件中的属性。然后,您可以遍历容器的Controls集合。
foreach (Control ctl in container.Controls)
{
if (ctl is MyUserControl)
{
MyUserControl uctl = (MyUserControl)ctl;
// do something with uctl properties, e.g.
string myString = uctl.Address1;
}
}
答案 1 :(得分:0)
一些伪代码:
Let the parent container control be ParentContainerControl
For Each ctl` In ParentContainerControl.Controls
If ctl is a TextBox
Use ctr.Text
End If
Next
答案 2 :(得分:0)
转换为用户控件类型据我所知只适用于Web应用程序项目, 所以你还有其他一些选择 - 创建会话或查看状态值并在这些控件之间共享它。 - 创建这两个用户控件都继承的基类,并在基础calass中定义控件应该通过的属性。 - 创建一个接口,这两个用户控件都将实现。
希望这会有所帮助。