c# – 从ASP.net中的用户控件访问页面上的文本框

前端之家收集整理的这篇文章主要介绍了c# – 从ASP.net中的用户控件访问页面上的文本框前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一些页面略有不同,但都有相同的“操作按钮”,为每个页面执行相同的任务.而不是重复代码,我做了一个用户控件,包括执行操作的按钮 – 但是有一个我似乎不能做的动作.

每个页面都有一个文本框(不在用户控件内部,因为它位于页面的不同位置).当我点击“保存注释”按钮(在用户控件中)时,我似乎无法访问文本框中的文本.

我试过使用这样的东西:

TextBox txtComments = (TextBox)this.Parent.FindControl("txtComments");
SaveChanges(txtComments.Text);

…但是txtComments返回为空.

所以,我想知道这是否可能,或者如果有更好的方法来做我想要做的事情?

编辑:文本框位于原始页面上的占位符…

编辑2:发布最小化的解决方案 – 仍然无法弄清楚这一点.

编辑3:删除解决方案以节省空间 – 解决问题.

解决方法

我的解决方案最终令人惊讶的简单
TextBox txt = this.Parent.Parent.FindControl("ContentPlaceHolder2").FindControl("TextBox1") as TextBox;
if (txt != null) Label1.Text = txt.Text;

我以前出错我是使用错误的ContentPlaceHolder ID.我正在页面中使用占位符的ID,而不是主页上的ID.

猜你在找的C#相关文章