属性在设置后具有相同的值
本文关键字:设置 属性 | 更新日期: 2023-09-27 17:51:20
Q:
我在.aspx
文件中有一个面板visibility=false,在我的代码中的某个时刻,我设置了visibilicy=true。但是问题是:当我跟踪代码时,我发现visibility属性仍然等于false,尽管我将其设置为true。我的面板名称是:pnl_DetailsGeneral
protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
{
if (RadioButtonList1.SelectedValue == "2")
{
drp_Week.Enabled = false;
gv_Details.Visible = false;
panel_rmv.Visible = false;
pnl_DetailsGeneral.Visible = true;//Here when i put a break point and after setting visible to true i find `pnl_DetailsGeneral.Visible = false`
gv_DetailsGeneral.Visible = true;
BindGridGeneral();
}
else if (RadioButtonList1.SelectedValue == "1")
{
drp_Week.Enabled = true;
gv_Details.Visible = true;
gv_DetailsGeneral.Visible = false;
pnl_DetailsGeneral.Visible = false;
if (drp_Week.SelectedValue != "-1")
{
BindGrid();
}
}
}
是什么原因导致了这个问题?
所以很明显,你控制的父母仍然是看不见的!
将父对象设置为"可见"时,控件也将变为可见。
如果任何父级的Visible=false,我相信Control.Visible
属性将返回false。
一种可能的解释是通过控制层次结构的隐式可见性。
例如,如果您有一个占位符,而该占位符包含其他控件,并且该占位符的visible设置为false,则它的所有子控件也会将visible设为false,即使您自己显式设置了属性也是如此。