C# forms.timer不触发窗体加载功能上的函数

C# forms.timer不触发窗体加载功能上的函数,c#,winforms,C#,Winforms,我在form_Load函数中有以下代码 System.Windows.Forms.Timer newtimer = new Timer(); newtimer.Tick += new EventHandler(refreshinfo); newtimer.Start(); newtimer.Interval = 20000; “refreshinfo”函数如下所示: private void refreshinfo(object source,EventArgs e) { //

我在form_Load函数中有以下代码

System.Windows.Forms.Timer newtimer = new Timer();
newtimer.Tick += new EventHandler(refreshinfo);
newtimer.Start();
newtimer.Interval = 20000;
“refreshinfo”函数如下所示:

private void refreshinfo(object source,EventArgs e)
{
       // Some code here
}

20秒后调用函数“refreshinfo”。到现在为止,一直都还不错。问题是我想在form_Load事件中也调用“refreshinfo”。这样,当用户加载此表单时,我可以从“refreshinfo”中获得所需的结果。

为什么不在表单加载函数中触发refreshinfo()函数?

只需在表单加载中运行它

public void Form_Load(object sender, EventArgs e)
{
    // Invoke it after 20 seconds
    Timer newtimer = new Timer();
    newtimer.Tick += refreshinfo;
    newtimer.Interval = 20000;
    newtimer.Start();

    // Invoke it now
    refreshinfo(sender, e);
}
Thread thrd = new Thread(() => { refreshinfo(null, null); });
thrd.Start();