別のフォームまたはクラスの変数にアクセスするには、そのクラス/フォームの新しいインスタンスを作成し、基本的にプロパティを使用して変数にアクセスするのが正しい方法です。(get/set)
しかし、そのフォームのインスタンスが既にバックグラウンドで実行されている場合はどうなるでしょうか? 新しいインスタンスを作成せずにそのフォームの変数にアクセスすることは可能ですか?
これまでに行ったことはApplication.Current.Windows[i]
、オブジェクトに格納し、それを使用して変数にアクセスしようとしたことです。さて、キャストしてもうまくいきませんでした。
すなわち
アクセスしたい変数は MainWindow という形式なので、試してみたのは次のとおりです。
Private MainWindow mW;
mW = (MainWindow)Application.Current.Windows[1]; //since it's the second window
mW.Variable = dummy;
これについてあなたの提案は何ですか?前もって感謝します