我有一个带有文本框控件(txtid)的aspx页面(example.aspx),并且在同一页面上创建一个带有图像的用户控件(access.ascx)按钮(click.png)。我必须将文本框(txtid)检索到用户控件中。我如何检索文本框控件(txtid)在用户控件页面(access.ascx)中的值?如何访问从页面到用户控件的文本框值
3
A
回答
2
尝试类似:
TextBox txt= (TextBox)this.Parent.FindControl("txtid");
可能会包含在你的用户控件。这个.Parent应该让你参考example.aspx页面。
2
在用户控件,您可以添加一个属性,如:
public property Text
{
..
}
然后页面可以从页面的文本框中的值赋给这个属性,它的用户控件可以再使用。您也可以使用SetText(string text)
方法。
1
试试这个
TextBox txt1 = (TextBox)this.Parent.FindControl("txtid")
1
内部用户控件:
TextBox textBox = (TextBox)this.FindSiblingControl("txtid");
辅助方法:
public static class StaticClassToHandleExtensions
{
public static Control FindSiblingControl(this Control control, string id)
{
Control parent = control.Parent;
while (parent.GetType() != typeof(ContentPlaceHolder) && parent.GetType() != typeof(Page))
parent = parent.Parent;
return parent.FindControl(id);
}
}
第一级Parent
可能不在同一水平的控制,所以你需要更高的持续上涨。这个例子在ContentPlaceHolder
上停止,它将成为页面的顶层,它的主页面为Page
,它将成为没有母版页的页面的顶层。 FindControl
方法将搜索其整个控件树,这意味着它将搜索多个级别的深度,因此这是最安全和最简单的解决方案。
+0
或您的ascx可能包含一个公共属性Page名称可以说MyParentPage,您可以在其中保存实际的页面引用。 – mtsiakiris 2013-04-26 13:12:12
相关问题
- 1. 传递html文本框值从用户控制到aspx页面
- 2. 从网页用户控件访问页面内的html控件
- 3. 如何访问用户控件文本框在另一类
- 4. 如何使用主控从asp:content页面访问masterpage上的用户控件?
- 5. 如何从aspx页面访问userControl中的web控件页面
- 6. 如何从内容页面访问母版页中的用户控件?
- 7. 从用户控件访问父页ViewState?
- 8. 如何从页面访问usercontrol的值?
- 9. 如何从jquery文件访问母版页文本框?
- 10. 从容器页面访问用户控件中动态创建的复选框
- 11. 从访问到文本框
- 12. 从子用户控件访问基本用户控件属性
- 13. 从托管的Web页面访问用户控件的子控件
- 14. .net - 从用户控件访问页面全局变量
- 15. 从用户控件访问主页面公共变量
- 16. 如何从另一个类访问Winform文本框控件?
- 17. 访问用户控件内的文本框
- 18. 在Web用户控件上访问主页面控件
- 19. 如何访问文本框的值
- 20. C#从父页面访问asp控件
- 21. 无法从控件访问页面类
- 22. 从WebMethod访问主页面控件
- 23. 如何获得用户控件上的文本框的值
- 24. 从用户控制/类/页访问主页面公共方法
- 25. 如何访问当前页面中的iframe文本框ID?
- 26. 如何访问页面上HTML文本框的内容?
- 27. 如何将值从parent.aspx页面传递给用户控件?
- 28. 如何从.aspx页面访问.aspx.cs页面的值?
- 29. 如何从UserControl访问页面中的控件?
- 30. 在用户控制中访问用户控件和主页面值中的控件
@Paritosh已经给出了同样的答案 – Rahul 2013-04-26 13:01:10
@Rahul kisi ke回答同样的nahi ho sakte kya ..? – 2013-04-26 13:03:48
在同样的问题两个相同的答案与相同的控制名称,如“txtid”,,很搞笑.. – Rahul 2013-04-26 13:07:08