-2

in form1 , there are two functions , one for a button 's click event

    private void bQuery_Click(object sender, EventArgs e)
    {
        string sPrefix = tbPrefix.Text.Trim();
        QueryAll(sPrefix);
    }

another one is a task

    async Task QueryAll(string sPrefix)
    {
    }

now I need invoke form1 's task in form2 certain function , such as

            string prefix = "abc";

            frm = new form1();
            frm.ShowDialog();
            frm.Dispose();
            frm.QueryAll(sPrefix);

I know this statement

frm.QueryAll(sPrefix);

can not compile , just to show what I want to do , anyone knows how to call this task "QueryAll" ? thanks for your help

yangl
  • 337
  • 1
  • 3
  • 18

1 Answers1

2

it will be task

  public Task QueryAll(string sPrefix)
    {
        return Task.Run(() =>
        {
            //code here
            var foo = sPrefix;
        });
    }

then

 frm = new form1();
 frm.QueryAll(sPrefix).GetAwaiter().GetResult();
Shadrix
  • 99
  • 3