C#找出控件是不是显示在屏幕上[重复]
Posted
技术标签:
【中文标题】C#找出控件是不是显示在屏幕上[重复]【英文标题】:C# Find out if a control is showing on the screen [duplicate]C#找出控件是否显示在屏幕上[重复] 【发布时间】:2014-09-29 08:58:47 【问题描述】:我在面板中有一个文本框。
如果 TextBow.Visible = true 并且 Panel.Visible = False,
无论如何我可以说文本框虽然可见,但用户实际上并没有看到。
更清晰。
我在一个不可见的面板中有一个可见的文本框。因为面板不可见,但其中的控件是可见的,所以检查文本框的 visibie 属性并没有给我想要的答案。
我真正在寻找的是如何检查用户是否真的可以看到控件。
【问题讨论】:
我看不懂这个问题你能解释一下吗! 这是用于 html5 还是 WPF? WPF... 15 个字符esersers 然后编辑(标记)问题。 【参考方案1】:也许您可以使用递归方法检查控件的任何父级是否不可见?
如果为 true,则控件是不可见的。如果所有父项都可见,则控件也可见,除非控件本身不可见。
这样的:
public bool isVisible(Control c)
if (c.Visible == false)
return false;
else
if (c.Parent != null)
return isVisible(c);
else
return c.Visible;
【讨论】:
我考虑过这个,但我不确定它的逻辑是如何工作的。 查看我的答案以获取入门示例。不知道是不是正确的代码答案。以上是关于C#找出控件是不是显示在屏幕上[重复]的主要内容,如果未能解决你的问题,请参考以下文章