用不同的参数重新加载表单c#

Posted

技术标签:

【中文标题】用不同的参数重新加载表单c#【英文标题】:Reload form with different arguments c# 【发布时间】:2018-12-03 02:08:43 【问题描述】:

我是 C# 的新手,我正在制作一个表单,当我按下按钮时需要重新加载,但输入不同。

public partial class Edit_Desloc : Form

    public Edit_Desloc(string id_desloc, string proj, string data, string horas)
    
         ....
    

我正在使用这个:

Edit_Desloc edit_desloc = new Edit_Desloc(list[0][0], list[4][0], list[1][0], list[3][0]);
edit_desloc.Show();

this.Close();

但这不是很好。

我不能重新加载表单而不是关闭它然后重新打开吗?

【问题讨论】:

您可以。重构您的代码并创建一个LoadData 函数,该函数具有与构造函数中相同的参数,并将逻辑移至构造函数。然后在需要时调用该方法。 【参考方案1】:

重构您的代码并创建一个LoadData 函数,该函数具有与构造函数中相同的参数,并将逻辑移至构造函数。然后在需要时调用该方法。

假设您有以下代码:

public partial class Edit_Desloc : Form

    public Edit_Desloc(string id_desloc, string proj, string data, string horas)
    
        InitializeComponent();
        /* some other initialization based on parameters*/
    

将其重构为以下内容:

public partial class Edit_Desloc : Form

    public Edit_Desloc(string id_desloc, string proj, string data, string horas)
    
        InitializeComponent();
        LoadData(id_desloc, proj, data, horas);
    

    public void LoadData(string id_desloc, string proj, string data, string horas)
    
        /* some other initialization based on parameters*/
    

然后在需要时通过传递参数调用LoadData

【讨论】:

以上是关于用不同的参数重新加载表单c#的主要内容,如果未能解决你的问题,请参考以下文章

重新启动应用程序并重定向到 C# 中的特定表单

页面重新加载是不是会导致帖子?

Angular2路由器2.0.0在加载不同参数的相同url时不重新加载组件?

表单自动仅提交一次并重新加载相同的页面

表单提交后防止页面重新加载

Codeigniter 3:不要在表单验证错误时重新加载表单