0

メインウィンドウには他のウィンドウインスタンスがたくさんあります

MainWindow
{
    Window1 win1= new Window1();
    Window2 win2 = new Window2();
    // ....... and so on 

    private keydownevent(  ,key e)
    {  
        if(e.keu==key.return)
        {
            //some logic here
            if(some condition)
            {
                win1.show();
            }
            else if(some condition)
           {
                win2.show()
           }
           // ....
        }
    }
}
// and in window1 lets say 
Window1
{
    foo_class fcl = new foo_class();
    click_button()
    {
        // do some logic
        fc1.function in class;
    }
 }

現在、テキストボックスのコンテンツはバーコードであり、ウィンドウ1が表示され、ウィンドウ1のクリックボタンが完了したときに、メインウィンドウのテキストボックスをクリアしたい

////////// 私が試してみました

          MainWindow win= (MainWindow)Application.Current.MainWindow;
             win.txtBlock1.Text = ""; 

foo_class と button_click を入れてもエラー window1 can not be cast to mainwindow がスローされる

私も試しました

window(texbox)としてキーダウン関数のテキストボックスとして引数を取るコンストラクタを作成しますが、それは毎回新しいインスタンスを作成しますが、メインウィンドウのインスタンス化中に作成されたインスタンスのみが必要であり、そのwindow1インスタンスを使用し続けます

メインウィンドウのテキストボックスをクリアする方法を提案してください。そして、そのメソッドをどこに置くべきですか

4

1 に答える 1