フォームを特定のフォームより手前に表示する
スポンサーリンク
あるフォームより手前に表示するには ShowDialog メソッドでモーダル表示するという方法があります。ただし、これではモーダル表示されていないフォームに制御を移すことができません。かといって、モードレス表示すると、他のフォームがアクティブになった際にフォームが隠れてしまいます。
これらは、オーナーとなるフォームを指定することで解決します。オーナーとなるフォームから AddOwnedForm メソッドで所有される側のフォームを加えるか、または所有される側のフォームの Owner プロパティからオーナーとなるフォームを設定します。
サンプルコード
以下にサンプルコードを示します。
VB.NET 全般
' Form1 の新しいインスタンスを生成する Dim cForm1 As New Form1() ' cForm1 を所有する Me.AddOwnedForm(cForm1) ' 所有される側からオーナーを指定することも可能 'cForm1.Owner = Me ' cForm1 を表示する cForm1.Show()
オーナーによる所有を解除する場合は、RemoveOwnedForm メソッドを使用して、解除したいフォームを指定するか、解除したいフォーム側の Owner プロパティを null (VB は Nothing) を設定します。
VB.NET 全般
' cForm1 を所有を解除する Me.RemoveOwnedForm(cForm1) ' 所有される側からオーナーに Nothing を指定しても解除される 'cForm1.Owner = Nothing
関連するリファレンス
準備中です。