繁体   English   中英

C#:重置面板中的控件(WinForms)

[英]C#: Reset Controls in a Panel (WinForms)

将面板中的所有Controls重置为其初始状态(编译时状态)的快速方法是什么? 我有要重置的TextBoxesRadioButtonsComboBoxesCheckBoxes 我希望他们在程序首次运行时将其重置为值。 我想要一个不涉及循环或递归的解决方案,主要是因为当我开始一个新项目时,我不想再次重新实现同一件事。 我只是在寻找一组可以完成工作的方法。 有吗

您的控件没有编译时状态,因为状态是运行时概念。

我认为您的意思是希望将控件重新初始化为属性表中所示的状态。 此状态由InitializeComponent生成的代码应用,因此要重新应用该状态,您可以再次调用它。

唯一的问题是InitializeComponent也连接事件,您可能不想重复两次。 您可以通过以下方法解决此问题:在调用之前取消所有事件的注册,或者之后取消重复的调用列表(请参见此答案 )。

我不推荐任何一个。 最好的方法是编写自己的方法,以一种想要的方式逐一设置属性。 有时您必须编写代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM