将winform的元素重置为初始化状态(C#/ .Net)

我正在使用面板中的各种元素在C#中构建一个winform,该面板开始是隐形,禁用或设置为null(标签,combobox,网格等)。 当用户经历并做出选择时,这些元素被填充,选择等。

我们的想法是上传文件,读取文件并将条目处理到数据库。 完成此目录的处理后,我希望能够让用户选择另一个目录,而无需退出并重新启动winform应用程序,只需按下在该过程完成时变为可见的按钮即可。

是否有一个简单的调用来重置应用程序(或包含元素的面板),类似于刷新webform时,或者我是否必须编写一个一次“重置”所有这些元素的函数?

编辑:作为开发会议的结果,我的项目改变了方向。 我感谢你们两位帮助解答的人,我将结束这个问题。

从表单中简单删除面板并创建新面板。

编辑:示例:

Panel CreatePanelWithDynamicControls() { Panel ret = new Panel(); ret.Dock = DockStyle.Fill; // some logic, which initialize content of panel return ret; } void InitializeDynamicControls() { this.Controls.Clear(); Panel pnl = this.CreatePanelWithDynamiControls(); this.Controls.Add( pnl ); } void Form1_Load( object sender, EventArgs e ) { if ( !this.DesignMode ) { this.InitializeDynamicControls(); } } // I don't know exactly, on which situation // do you want reset controls void SomeEvent( object sender, EventArgs e ) { this.InitializeDynamicControls(); } 

你可以尝试调用this.InitializeComponent(),它可以做到这一点。 或者,如果您的应用程序具有“目录选择”表单和“处理文件”表单,您可以让“目录选择”表单在“处理文件”表单上执行“新建”,这应该将其返回到其原始状态(而不是虽然开放。