在我的 test.aspx 页面上,不同的 ascx 控件上出现了多个 asp:panels。我想在运行时通过我有权访问的面板禁用面板。有没有办法这样做?
问问题
918 次
2 回答
2
您应该在 ascx 控件中创建一个方法来启用/禁用面板。父级不应访问该面板。ascx 控件必须处理它。
更新:
您可以创建一个代理属性,将值传递给子控件(Panel1)。此代码放置在 ascx 控件中。
public bool PanelVisible
{
get
{
return Panel1.Visible;
}
set
{
Panel1.Visible = value;
}
}
于 2013-08-24T22:51:52.590 回答
0
如果您知道要禁用的面板的 ID,您可以执行以下操作: Panel pnl = this.Page.FindControl(id) as Panel; pnl.Visible = 真/假;
如果面板不是页面的子页面可以编写递归的 findcontrol 方法。
于 2013-08-24T23:12:02.457 回答