我们是否可以将注册在一个aspx中的一个控件Id访问到另一个aspx控件中,
发布于 2009-03-23 12:40:34
如果您在ascx中,并且需要访问父aspx页中的控件,则可以执行以下操作:
Control myControl = this.Page.FindControl("myControl");但是,有必要研究一下为什么需要这样做--一般来说,子用户控件在父页面内执行操作并不是一种好的做法。另一种方法是让ascx在给定的场景中抛出一个事件,父页面将依次订阅该事件(并可能根据该事件执行内部操作)。这将允许页面和用户控件之间的互操作性,同时仍然正确地封装每个控件的功能。
发布于 2009-03-23 12:36:19
您的问题不是很清楚,但我猜您正在尝试从.ascx控件内部访问页面的控件,对吗?
如果这就是问题所在,答案是不,你不能。或者至少你不应该(正如其他答案所显示的,事实上你可以做到)。
您不应该这样做,因为.ascx控件是可重用的。所以它必须独立于任何页面,它本身必须有意义。例如,您能想象一个textbox控件在使用它的页面中需要一些具有名称的元素吗?
如果需要该控件访问页中的数据,则必须以相反的方式执行此操作。该页必须通过公共属性将数据提供给控件。
希望这能有所帮助
https://stackoverflow.com/questions/673197
复制相似问题