我正在写一个复合控件在c#asp.net中作为一个实验,并希望我的复合控件的所有实例都与一个外部控件交互。这可能吗?asp.net webforms - 复合控件与页面控件交互
事情我已经尝试:
选项1:是否在网页上不存在外部控制的控制范围内的检查,如果它不
选项2添加:有目标控件的ID通过在设计时复合控件,然后使用this.Page.FindControl()
显然,这是一厢情愿的想法,这将是简单的:)
如果我尝试从CreateChildControls方法中做到这一点, this.P age.FindControl(目标控件)总是返回null。如果我尝试从该方法内将控件添加到页面,则会引发异常:
“在DataBind,Init,Load,PreRender或Unload阶段无法修改控件集合。”
是否有另一种方法/事件,我可以实现这一目标?
你的意思是“让我的复合控件的所有实例与一个外部控件交互”?另外,不要像这样在单独的控件之间创建依赖关系 - 通过控件属性从页面访问它们。 – IrishChieftain 2012-02-26 15:32:52
我基本上想要能够将我的复合控件的一些实例添加到页面,然后将它们全部输出到同一个面板,而不是为每个复合控件添加面板。 – Evert 2012-02-26 15:38:48
所以你使用复合控件来包含其他控件?只是好奇,如果你真的需要复合材料?你的复合控制是做什么的? – IrishChieftain 2012-02-26 15:49:28