###実現したいこと
VB.NETを利用して、新たな業務画面の構築をしようと考えています。
現在は、そのシステムの基盤となる基底クラス等の設計をしているところなのですが、画面遷移の共通化で躓いています。
###発生している問題
画面遷移をする時に、下記のコードを書けば遷移できるのですが、この同じような処理を各フォームに入れるのは少し面倒だと感じています。
(form1からform2に遷移する場合…)
vb.net
1Dim form2 As New form2 '遷移先 2form2.Show() 3My.Application.ApplicationContext.MainForm = form2 4form1.Dispose() 'form1を閉じる
なので、理想としては子クラスは下記の様に実装して遷移は基底クラスにやらせたいと考えています。
vb.net
1Dim form2 As New form2 '遷移先 2forwardScreen(form1,form2) 'form1を閉じてform2へ遷移する
###試したこと
下記の様に基底クラスを実装してみましたが、上手くいきませんでした。
''' <summary> ''' 画面を遷移する ''' </summary> ''' <param name="TransitionOriginal">遷移元</param> ''' <param name="TransitionTarget">遷移先</param> Protected Sub forwardScreen(TransitionOriginal As Form, TransitionTarget As form) TransitionTarget.Show() My.Application.ApplicationContext.MainForm = TransitionTarget TransitionOriginal.Dispose() End Sub
分かる方がいらっしゃいましたら、ご教示ください。
宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/08 01:39