动态修改由按钮,工具条,面板等组成的WinForm应用程序的每个控件的前景色和背景色的最佳方法是什么?有没有简单的方法来自动循环每个控件,还是必须手动更改每个控件?谢谢。C# - 一次修改所有表单控件的最佳方式?
0
A
回答
2
foreach (Control c in MyForm.Controls) {
c.BackColor = Colors.Black;
c.ForeColor = Colors.White;
}
4
您可以通过控制循环,我相信所有的控件都有Controls
属性,它是包含控件的列表。
假设功能:
public void ChangeControlsColours(Controls in_c)
{
foreach (Control c in in_c)
{
c.BackColor = Colors.Black;
c.ForeColor = Colors.White;
if (c.Controls.length >0) //I'm not 100% this line is correct, but I think you get the idea, yes?
ChangeControlsColours(c.Controls)
}
}
0
这真的取决于你想要做什么。最优雅的方式可能是您在设计时定义的链接应用程序设置,然后您可以在运行时进行更改。
0
private void UpdateInternalControls(Control parent)
{
UpdateControl(parent, delegate(Control control)
{
control.BackColor = Color.Turquoise;
control.ForeColor = Color.Yellow;
});
}
private static void UpdateControl(Control c, Action<Control> action)
{
action(c);
foreach (Control child in c.Controls)
{
UpdateControl(child, action);
}
}
相关问题
- 1. 获取上次修改文件的最佳方式属性
- 2. 清除C#表单上所有控件的最佳方法是什么?
- 3. 修改WebAPI OData的最佳方式QueryOptions.Filter
- 4. 最佳(最快)的方式来解析和修改文件
- 5. 以编程方式修改Excel电子表格的最佳方式
- 6. 最佳方式修身
- 7. Ajax控制表行的最佳方式
- 8. Orchard CMS 1.4:以编程方式修改菜单 - 最佳做法
- 9. C++最佳方式
- 10. 在运行时修改django表单的最佳方式是什么?
- 11. 检查文件未被修改或更改的最佳方法
- 12. 表单操作的最佳方式?
- 13. 以两种形式使用一个控件的最佳方式
- 14. Cocoa:禁用视图中所有控件的最佳方法
- 15. 将控件嵌入到列表/网格中的最佳方式
- 16. 提交时更改表单动作的最佳方式
- 17. C#删除所有数据表的最佳方法
- 18. 在控制器中修改/格式化数据库数据的最佳方法?
- 19. 每次完成一个部分时提交表单的最佳方式
- 20. 在C#中切换表单的最佳方式是什么?
- 21. 一次扩展/修改所有文件类型的vim高亮?
- 22. 在最后一次正则表达式匹配之前修剪所有文本
- 23. 什么是存储控件和动态添加控件到现有表单的最佳方式
- 24. C#正则表达式来修改所有匹配的HREF
- 25. 递归找到所有文件的最佳方式(REST API)
- 26. 最简单的方式来改变一次特别的时区
- 27. 实现表单编辑和审核所有编辑的最佳方式?
- 28. 修改其他程序员导航的最佳方式
- 29. 可可 - 什么是修改NSOutlineView的最佳方式
- 30. 使用表格修改ObservableCollection中的项目的最佳方法
+1用于提供递归解决方案 – 2010-11-25 16:30:49