2016-04-30 6 views
-1

フレームがある場所にこのアプリケーションがあり、フレームを別のページに移動できる特定のボタンがある別のページに移動しましたが、どのようにするかわかりませんフレームのnavigateプロパティを別のクラスのどこかに変更します。誰かがそれを助けてくれますか、ページ識別子のテキストプロパティを別のクラスからどのように変更すればいいですか?Wpfアプリケーションでのフレームナビゲーション

答えて

0

お試しください。ボタンのクリックイベントハンドラ。

framename.Navigate(new Page1()); 

ここでPage1は、移動先のxamlファイルです。

EDIT: あなたの要件は、MVVMモデルを使用して簡単に実装できます。 MVVMの背後にある基本的な考え方は、ビューモデルクラスのプロパティにデータをバインドできることです。したがって、ビュー・モデル・クラスのインスタンスを使用して、親クラスから子クラスのプロパティーを簡単に制御できます。

当面お試しいただけますか? ((MainWindow)System.Windows.Application.Current.MainWindow).Framename.Navigate(新しいページ());

また、コンポーネントをパブリックにするためにこれを試してください。 は、他のWPFウィンドウ内のアクセス制御のために、あなたが公共のように、そのコントロールを宣言する必要があり、WPFのコントロールの既定の宣言は公開され、あなたは、このコードでそれを指定することができます。

<TextBox x:Name="textBox1" x:FieldModifier="public" /> 

そして後にすることができますよりアプリケーション内のアクティブなウィンドウをすべて検索すると、次のようなコントロールがあります。

foreach (Window window in Application.Current.Windows) 
{ 
    if (window.GetType() == typeof(Window1)) 
    { 
     (window as Window1).textBox1.Text = "I change it from another windows"; 
    } 
} 
+0

いいえ、あなたはその質問を理解していないと思います。フレームは別のクラスにあり、コントロールは異なっています。どのようにコントロールを共有しますか? – Gaurab

+0

更新しました。確認してください。私の提案は、MVVMモデルに行くことです。 – ViVi

+1

ありがとうございました – Gaurab

関連する問題