在C#窗体中,假设我有5个控件。我只是隐藏其中的一些。当我运行该程序时,只会出现(Visible = true)控件。我想单击一个按钮以显示或取消隐藏所有控件。我怎样才能做到这一点?如何在C#中显示窗体的所有隐藏控件?
1
A
回答
2
你可以让它递归,如果你有任何面板/组框,他们的孩子也会变得可见。
public void MakeVisible(Control control)
{
if(control.HasChildren)
{
foreach (Control child in control.Controls)
{
MakeVisible(child);
}
}
control.Visible = true;
}
2
您将需要更改后面的代码中的可见propery。
例如
button1.visible = true;
并为每个隐藏的控件,按钮做或不做。
只是添加我怀疑你会想通过所有其他人建议的控制循环。如果您在不同情况下仅显示某些控件,则更改表单上所有内容的可见性会浪费时间,并且可能会导致跟踪效果进一步恶化。
由于它只有5个控件,我会坚持单独更改每个控件。
4
有关的WinForms,试试这个:
foreach (Control c in Controls) {
c.Visible = true;
}
代码遍历窗体上的所有控件并设置Visible属性设置为true,使每一个可见。
1
如果你想隐藏/显示的一切,
foreach (Control cr in this.Controls)
cr.Visible = false; // or true, if you want to show everything
1
喜欢的东西
foreach (var controlObj in form.Controls)
((Control)controlObj).Visible = True;
应该做的伎俩。这只是显示全部控件的形式。 (注意:Form.Controls
为仅包含Object
秒的非类型化的集合,所以你要投他们AFAIR)
如果你只有5控制,你也可以单独给他们,也许在像
void showHiddenControls(bool show) {
control1.Visible = show;
control2.Visible = show;
// ...
}
的方法
这样做的好处是您可以使用showHiddenControls(true)
来显示它们,并使用showHiddenControls(false)
再次隐藏它们。
0
主要的想法是这样的创建对象:
Label toto = new Label():
(...) Do whatever you wan't to initialize your object
toto.Visible = false;
Button makeItAppear = new Button();
(..) Do whatever you wan't to initialize this button
,然后单击事件添加一个处理程序:
makeItAppear.Click += new System.EventHandler(MakeItAppear);
然后在事件处理程序:
private void MakeItAppear(object sender, EventArgs e)
{
this.toto.Visible = true;
}
最好的会是创建一个函数,使其出现并由Handler调用。当然,如果你有多个对象可以出现或消失,在这个函数中对所有对象都做同样的事情。
相关问题
- 1. 控件在C#窗口程序中隐藏窗体的事件
- 2. 在C中隐藏窗体#
- 3. C#显示隐藏窗口
- 4. 如何在同一窗口中显示窗体输出并隐藏窗体
- 5. 如何捕捉/处理窗体的隐藏/显示事件?
- 6. 在C#中隐藏/显示Windows窗体面板#
- 7. Drupal 6:如何隐藏字段集在窗体中显示?
- 8. 在C#中,你如何显示一个隐藏的窗口?
- 9. 在Mac OS X中显示桌面/隐藏所有窗口
- 10. Zend - 隐藏窗体并显示消息
- 11. 有条件地显示/隐藏Windows窗体元素
- 12. 用angularjs显示/隐藏所有显示/隐藏区域
- 13. 如何在MDI容器中显示子窗体而不显示子窗体中容器窗体中的控件?
- 14. wpf C#在资源文件中隐藏/显示控件
- 15. 在C中隐藏窗体滚动条#
- 16. 如何隐藏当前窗体的其他窗体C#
- 17. 如何在Windows窗体中隐藏控件的调整大小控点?
- 18. 如何隐藏/显示cmd窗口?
- 19. 隐藏而在Windows重新显示板/组件窗体
- 20. 窗体窗体隐藏面板和显示按钮
- 21. Programmaticaly在Linux中隐藏/显示窗口
- 22. 在Perl/Tk中隐藏窗口并再次显示。所有部件
- 23. 如何隐藏子窗体中的基类属性在C#
- 24. 显示隐藏窗口
- 25. 如何编写jQuery函数来显示和隐藏窗体
- 26. 显示/隐藏旋转前的控件
- 27. 父控件的显示/隐藏面板
- 28. 如何在Visual Studio中设计时隐藏窗体中的控件?
- 29. jQuery在窗体中使用下拉菜单显示/隐藏
- 30. jQuery隐藏div使用悬停显示所有隐藏的div
@H。Wardak:你为什么会在乎它是递归的? – 2011-12-22 08:22:12