- - PR -
【画面遷移の方法について】WPF WEBアプリケーション
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2009-04-03 09:34
いつもお世話になっております。
現在、WPFでWEBアプリケーションを作成中で、 複数のButtonを配置した、UserControlを設けました。 ※LogOut機能やTopMenuへ遷移する機能を ※システム共通で利用したい為です。 UserControlに配置した、ButtonのClickイベントで 画面遷移する方法をご存知の方いらっしゃいませんか。 UserControlではなく、Pageに配置したButtonからは Me.NavigationService.Navigate(遷移先) のようにして遷移しています。 UserControlより、Pageオブジェクトを取得する? そもそも、遷移方法が違う? 何かお分かりになる方がいらっしゃいましたら、宜しくお願いします。 | ||||
|
投稿日時: 2009-04-06 16:43
WPFはフォントの表示が不評なのであまり使ってませんが、
TopMenuへ遷移するのが主要な機能の一つであるUserControlなら、 環境に関わらず、UserControlに(TopMenuへ遷移するボタンを押す?)イベントを追加し 親(Window/Page)で処理するのが素直なやり方の気がします。 | ||||
|
投稿日時: 2009-04-06 17:49
jijiさん ありがとうございます。
そうですよね。 やはりUserControlにイベントを追加して遷移する方が、素直ですよね。 Pageに配置したButtonからは、遷移できているので UserControlにも同じように Me.NavigationService.Navigate(遷移先) と記述したところ ⇒MeがUserControlクラスの為、NavigationServiceがエラーになってしまう。 ※NavigationServiceがSystem.Windows.Navigationのメソッドだから... なんとかして、UserControlからPageクラス(Windowsクラス?)を取得出来れば 遷移出来そうなんですが、どこのクラスで保持しているのやら。。。 もう少し探してみたいと思います。 | ||||
|
投稿日時: 2009-04-09 09:19
【解決?】
なんとか遷移出来るようになりました。 ソースは下記の通りです。 Dim mNavi As NavigationWindow mNavi = Application.Current.Windows(0) mNavi.Navigate(遷移先) とりあえずは、この方法でやってみたいと思います。 |
1