子フォームに Web ブラウザー コントロールがあり、表示された Web ページからデータを取得します。このデータをブラウザ フォームで使用して親フォームに渡す必要がありますが、既に開いているため、新しいインスタンスを開始する必要はありません。
親フォームは、ブラウザーからこのデータを受け取り、ページの解析から設定された変数でいくつかのテキスト ボックスを更新する必要があります。
私はこれを親フォームに持っています:
private void browserToolStripMenuItem_Click(object sender, EventArgs e)
{
System.Threading.Thread t = new System.Threading.Thread(new System.Threading.ThreadStart(RunBrowser));
t.SetApartmentState(ApartmentState.STA);
t.Start();
}
public static void RunBrowser()
{
Application.Run(new BrowserForm());
}
子フォームで多くのことを試しましたが、まったく機能しません。私が得ることができる最善の方法は、変数を親に渡し、MessageBox を介して表示することですが、TextBox の更新をまったく拒否します。
ところで、私はこれを 12 時間近く連続して解決しようとしてきましたが、それが私がここで質問している唯一の理由です。