-2

私は何が欠けていますか?
form1.cs のメソッド:

public partial class Form1 : Form  
{  
    ...  
    public void DoSomething()  
      {  
            <Database call to update a list on Form1>  
      }  
      ...  
}  

ユーザー コントロールから:

public partial class UserControl1 : UserControl  
{  
      ...  
      private void UserControl1_Load(object sender, EventArgs e)  
      {  
            Form1.DoSomething();  
      }  
      ...  
}  

メソッドにアクセスできません。「Form1 frm = new Form1()」を使用してみましたが、それを使用しようとしてもfrm.DoSomthing()実際にはリストを更新しない場合、更新コードが機能し、テストしたためデータがあることがわかります。これに関する私の問題は、「NEW」キーワードが別のオブジェクトを作成し、元のオブジェクトを更新していないことだと思います。

4

1 に答える 1

2

UserControl は Form1 のメソッドにアクセスできないはずです。Form1 がリッスンしてリストを更新する UserControl で発生するイベントを用意することをお勧めします。アーキテクチャと実際に何が起こっているかを詳しく知らなければ、より具体的なアドバイスを提供することは困難です。

于 2013-05-07T20:30:13.630 に答える