2017-09-27 3 views
-2

があるボタンのもう一つのは、私は別の形呼び出すことができます '、二つの機能、のための1つは、SタスクをForm1で

async Task QueryAll(string sPrefix) 
    { 
    } 

は今、私が呼び出す必要があるタスクがある

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

クリックイベントForm2の特定の機能でのForm1のタスク、など

  string prefix = "abc"; 

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

私はこの文を知っ

frm.QueryAll(sPrefix); 

私は何をしたいのかを示すためにコンパイルできません。誰もこのタスク "QueryAll"を呼び出す方法を知っていますか?おかげであなたの助け

+0

それはそれは方法だ、仕事ではない作業になります。具体的には、プライベートメソッドです。 – john

+0

なぜ、複数のフォームで使用されているので、この共有関数を特定のフォームに結びつけるのではなく、別のクラスに入れるのはなぜですか? – ADyson

答えて

2

ことが

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

が、その後

frm = new form1(); 
frm.QueryAll(sPrefix).GetAwaiter().GetResult(); 
関連する問題