Met*_*dam 10 c# asp.net user-controls
我有一些略有不同的页面,但都有相同的"操作按钮",每个页面执行相同的任务.我没有复制代码,而是创建了一个用户控件,其中包含执行操作的按钮 - 但是我似乎无法执行一项操作.
每个页面都有一个文本框(不在用户控件内,因为它位于页面的不同位置).当我单击"保存注释"按钮(在用户控件中)时,我似乎无法访问文本框中的文本.
我试过用这样的东西:
TextBox txtComments = (TextBox)this.Parent.FindControl("txtComments");
SaveChanges(txtComments.Text);
Run Code Online (Sandbox Code Playgroud)
...但是txtComments返回null.
所以,我想知道这是否可行,或者是否有更好的方法来做我想做的事情?
编辑:文本框位于原始页面的占位符中...
编辑2:发布缩小的解决方案 - 仍然无法弄清楚这个.
编辑3:删除解决方案以节省空间 - 解决了问题.
我的解决方案最终变得非常简单....
TextBox txt = this.Parent.Parent.FindControl("ContentPlaceHolder2").FindControl("TextBox1") as TextBox;
if (txt != null) Label1.Text = txt.Text;
Run Code Online (Sandbox Code Playgroud)
之前我出错的地方是我使用了错误的ContentPlaceHolder ID.我正在使用页面中占位符的ID,而不是母版页中的ID.
| 归档时间: |
|
| 查看次数: |
20444 次 |
| 最近记录: |