从ascx中查找对aspx的控制

hal*_*alp 4 vb.net asp.net

我试图在aspx页面上的用户控件(ascx)上找到aspx页面上的标签.显然,Page.FindControl("lablel1")无效.我需要在某处添加ClientID吗?谢谢.

And*_*are 14

我认为你应该停下来思考你的设计.您的控件不应该知道包含它们的页面的任何信息 - 您需要从另一个控件中查找页面上的控件这一事实告诉我您应该重新考虑该问题.

我能告诉你的最好的事情(我对你的架构知之甚少)就是你应该传入一个你希望在你的用户控件中找到的控件的引用.这样你的控制就不必了解自身之外的事物了.

  • 也许,但这不是问题.在这种情况下,有一个页面具有"错误/状态标签",其值由页面上的任何用户控件设置.它曾经通过索引静态访问,现在我正在尝试将其更改为使用某种FindControl. (2认同)