Control.Visible的查询集/内部值
是否有一种机制来读取SET设置为控件的可见属性的值?Control.Visible的查询集/内部值
ChildControl1.Visible = true; ChildControl2.Visible = false;
ParentControl.Visible = false;
bool childControl1Visible = ChildControl1.Visible
bool childControl2Visible = ChildControl2.Visible
在上面的例子中,两个childControl1Visible和childControl2Visible将返回false既不会由于被渲染到ParentControl的可见性。
我正在寻找一种方法来确定是否将子控件本身设置为可见真/假,而不管在任何父控件上设置的值如何。
回答:
没有办法获得内部值 - 它全部保存在名为flags
(see source)的internal
位向量中。
您将不得不在别处手动跟踪可见属性,或者将控件包装在自己的继承类中,您可以在其中覆盖Visible
属性并在其中公开该值。例如:
public class MyTextBox : System.Web.UI.WebControls.TextBox {
public bool Visible
{
get
{
return base.Visible;
}
set
{
ReallyVisible = value;
vase.Visible = value;
}
}
public bool ReallyVisible { get; private set; }
}
您可能想要选择一个更好的属性名称!
另一个拙劣的方法是使用反射来获取内部价值。请参阅here以了解执行此操作的方法。
以上是 Control.Visible的查询集/内部值 的全部内容, 来源链接: utcz.com/qa/264061.html