如何检查绝对控制可见性以及如何通知绝对可见性的更改

时间:2009-11-26 18:19:39

标签: c# winforms controls visibility

我的表单中有几个控件,我在这些控件上执行了一些更改(Text,Font,BackColor等)。仅当控件可见时,才需要进行更改。所以,我想停止对不可见的控件执行更改。我想在再次看到控件时不断更改控件。

我可以使用Control.Visible和Control.VisibleChanged,但是它们不能满足我的目的。

问题是,当控件因其父级而变得不可见时(即因为其父级变为不可见),VisibleChanged不会被触发。有趣的是,当控制再次可见时会被触发。

  1. 是否有办法在没有递归收听父级可见性更改的情况下收到可见性更改通知?

  2. 我还希望在我的表单上放置另一个表单并且某些控件变得不可见时收到通知。我称之为绝对可见性。 (它有另一个术语吗?)是否有可以用于此目的的事件?

  3. 感谢。

1 个答案:

答案 0 :(得分:0)

您可以设置一个计时器来检查控件上.Visible属性的状态,并在更改时触发事件。

相关问题