发现一个控件是否显示在屏幕上
本文关键字:显示 是否 屏幕 控件 一个 发现 | 更新日期: 2023-09-27 18:16:34
面板中有一个文本框。
如果TextBow。Visible = true和Panel。可见= False,
是否有办法我可以告诉文本框,虽然它是可见的,但实际上并没有被用户看到。
更清晰。
我有一个可见的文本框在一个不可见的面板。因为面板是不可见的,但它里面的控件是可见的,检查文本框的可见属性并没有给我想要的答案。
我真正想要的是如何检查用户是否可以实际看到控件
也许你可以用递归方法检查,如果任何父控件是不可见的?
如果为true,则该控件不可见。如果所有父控件都可见,则该控件也可见,除非该控件本身不可见。
public bool isVisible(Control c)
{
if (c.Visible == false)
return false;
else
if (c.Parent != null)
return isVisible(c);
else
return c.Visible;
}