2016-04-01 32 views
0

VBフォームがパネル内で正しくサイズ変更されないという問題があります。ウィンドウのサイズが変更されると、フォームはフォローされません。左上に固定されたままです。ただし、パネルは適切にサイズ変更されます。Vb.Netフォーム内部パネルサイズ変更の問題

ノーマルサイズ - サイズ変更http://s23.postimg.org/7pbwa6znv/ct1.png
- 私は私がいない成功を収めて、以下を使用しようとしました

Form2.TopLevel = False 
Me.Panel1.Controls.Add(Form2) 
Form2.FormBorderStyle = Windows.Forms.FormBorderStyle.None 
Form2.Dock = DockStyle.Fill 
Form2.Show() 

Form2の

示していますどのようにここで http://s18.postimg.org/kvek5ga95/ct2.png

です。
Dim f As New Form2 With {.TopLevel = False, .AutoSize = False} f.Dock = DockStyle.Fill Me.Panel1.Controls.Add(f) f.Show()

現在、この問題を回避する方法は、サイズを変更してフォーム2を閉じてからもう一度開くことです。これ以外の適切な回避策ではないが、Form2の内部のすべてのデータは、閉じることによってサイズ変更すると失われます。

If Form2.Visible = True Then 
     Form2.Close() 
     Form2.TopLevel = False 
     Me.Panel1.Controls.Add(Form2) 
     Form2.FormBorderStyle = Windows.Forms.FormBorderStyle.None 
     Form2.Dock = DockStyle.Fill 
     Form2.Show() 
    End If 

ありがとうございます。

を使用でき

答えて

1

Dim form2 As New Form 
    form2.TopLevel = False 
    form2.BackColor = Color.Red 
    form2.FormBorderStyle = FormBorderStyle.None 
    form2.Anchor = AnchorStyles.Bottom 
    form2.Anchor = AnchorStyles.Top 
    form2.Anchor = AnchorStyles.Left 
    form2.Anchor = AnchorStyles.Right 
    Panel1.Controls.Add(form2) 


    form2.Dock = DockStyle.Fill 
    form2.Show() 
+0

は、残念ながら何の変化も行かないし、ことを与えました。 Form2のプロパティに起因する可能性はありますか? – DataBox

+0

あなたのパネルが上、下、左、右に固定されていないことがありますか? –

+0

Panel1がT、B、L、Rの代わりにFillに設定されました。私は変更とダイスを作った。 – DataBox