Aracılığıyla paylaş


Formu konumlandırma ve boyutlandırma (Windows Forms .NET)

Form oluşturulduğunda, boyut ve konum başlangıçta varsayılan bir değere ayarlanır. Formun varsayılan boyutu genellikle 800x500 piksel genişlik ve yüksekliktir. Form görüntülendiğinde ilk konum birkaç farklı ayara bağlıdır.

Visual Studio ile tasarım zamanında ve kodla çalışma zamanında formun boyutunu değiştirebilirsiniz.

Tasarımcıyla yeniden boyutlandırma

Projeye yeni form ekledikten sonra formun boyutu iki farklı şekilde ayarlanır. İlk olarak, tasarımcıdaki boyut kavramaları ile ayarlayabilirsiniz. Sağ kenarı, alt kenarı veya köşeyi sürükleyerek formu yeniden boyutlandırabilirsiniz.

Windows Forms projesine kavramalı yeni form eklemek için çözüm gezginine sağ tıklayın

Tasarımcı açıkken formu yeniden boyutlandırmanın ikinci yolu özellikler bölmesidir. Formu seçin, ardından Visual Studio'da Özellikler bölmesini bulun. Ekranı aşağı kaydırarak boyutlandırıp genişletin. Genişlik ve Yükseklik'i el ile ayarlayabilirsiniz.

Windows Forms projesine yeni form eklemek için çözüm gezginine sağ tıklayın

Kodda yeniden boyutlandırma

Tasarımcı formun başlangıç boyutunu belirlese de, kodu kullanarak yeniden boyutlandırabilirsiniz. Bir formu yeniden boyutlandırmak için kod kullanmak, uygulamanızla ilgili bir şey formun varsayılan boyutunun yetersiz olduğunu belirlediğinde yararlıdır.

Formu yeniden boyutlandırmak için, formun Sizegenişliğini ve yüksekliğini temsil eden öğesini değiştirin.

Geçerli formu yeniden boyutlandırma

Kod form bağlamında çalıştığı sürece geçerli formun boyutunu değiştirebilirsiniz. Örneğin, üzerinde bir düğme varsa Form1 , tıklandığında formu yeniden boyutlandırmak için olay işleyicisi çağrılır Click :

private void button1_Click(object sender, EventArgs e) =>
    Size = new Size(250, 200);
Private Sub Button1_Click(sender As Object, e As EventArgs)
    Size = New Drawing.Size(250, 200)
End Sub

Farklı bir formu yeniden boyutlandırma

Forma başvuran değişkenini kullanarak, oluşturulduktan sonra başka bir formun boyutunu değiştirebilirsiniz. Örneğin, iki form Form1 (bu örnekteki başlangıç formu) ve Form2olduğunu varsayalım. Form1 tıklandığında olayı çağıran Click bir düğme vardır. Bu olayın işleyicisi formun Form2 yeni bir örneğini oluşturur, boyutu ayarlar ve sonra görüntüler:

private void button1_Click(object sender, EventArgs e)
{
    Form2 form = new Form2();
    form.Size = new Size(250, 200);
    form.Show();
}
Private Sub Button1_Click(sender As Object, e As EventArgs)
    Dim form = New Form2 With {
        .Size = New Drawing.Size(250, 200)
    }
    form.Show()
End Sub

Size el ile ayarlanmazsa, formun varsayılan boyutu tasarım zamanında ayarlandığı boyut olur.

Tasarımcı ile konum

Form örneği oluşturulduğunda ve görüntülendiğinde, formun ilk konumu özelliği tarafından StartPosition belirlenir. özelliği formun Location geçerli konumunu tutar. Her iki özellik de tasarımcı aracılığıyla ayarlanabilir.

başlangıç konumu vurgulanmış visual studio özellikler bölmesi

FormStartPosition Sabit Listesi Açıklama
CenterParent Form, üst formunun sınırları içinde ortalanır.
CenterScreen Form geçerli görüntüde ortalanır.
El ile Formun konumu Location özelliği tarafından belirlenir.
WindowsDefaultBounds Form, Windows varsayılan konumunda konumlandırılır ve Windows tarafından belirlenen varsayılan boyuta yeniden boyutlandırılır.
WindowsDefaultLocation Form, Windows varsayılan konumunda konumlandırılır ve yeniden boyutlandırılamaz.

CenterParent değeri yalnızca birden çok belge arabirimi (MDI) alt formu veya yöntemiyle görüntülenen normal bir form olan formlarla ShowDialog çalışır. CenterParent yöntemiyle Show görüntülenen normal bir formu etkilemez. Bir formu (form değişkeni) başka bir forma (parentForm değişken) ortalamak için aşağıdaki kodu kullanın:

form.StartPosition = FormStartPosition.Manual;
form.Location = new Point(parentForm.Width / 2 - form.Width / 2 + parentForm.Location.X,
                          parentForm.Height / 2 - form.Height / 2 + parentForm.Location.Y);
form.Show();
form.StartPosition = Windows.Forms.FormStartPosition.CenterParent.Manual
form.Location = New Drawing.Point(parentForm.Width / 2 - form.Width / 2 + parentForm.Location.X,
                                  parentForm.Height / 2 - form.Height / 2 + parentForm.Location.Y)

form.Show()

Kodlu konum

Tasarımcı formun başlangıç konumunu ayarlamak için kullanılabilse de, başlangıç konumu modunu değiştirmek veya konumu el ile ayarlamak için kodu kullanabilirsiniz. Formu konumlandırmak için kod kullanmak, bir formu ekrana veya diğer formlara göre el ile konumlandırmanız ve boyutlandırmanız gerekiyorsa kullanışlıdır.

Geçerli formu taşıma

Kod form bağlamında çalıştığı sürece geçerli formu taşıyabilirsiniz. Örneğin, üzerinde bir düğme varsa Form1 , tıklandığında olay işleyicisi Click çağrılır. Bu örnekteki işleyici, özelliğini ayarlayarak Location formun konumunu ekranın sol üst kısmına değiştirir:

private void button1_Click(object sender, EventArgs e) =>
    Location = new Point(0, 0);
Private Sub Button1_Click(sender As Object, e As EventArgs)
    Location = New Drawing.Point(0, 0)
End Sub

Farklı bir formu konumlandırma

Başka bir formun oluşturulduktan sonraki konumunu, forma başvuran değişkenini kullanarak değiştirebilirsiniz. Örneğin, iki form Form1 (bu örnekteki başlangıç formu) ve Form2olduğunu varsayalım. Form1 tıklandığında olayı çağıran Click bir düğme vardır. Bu olayın işleyicisi formun Form2 yeni bir örneğini oluşturur ve konumu ayarlar:

private void button1_Click(object sender, EventArgs e)
{
    Form2 form = new Form2();
    form.Location = new Point(0, 0);
    form.Show();
}
Private Sub Button1_Click(sender As Object, e As EventArgs)
    Dim form = New Form2 With {
        .Location = New Drawing.Point(0, 0)
    }
    form.Show()
End Sub

Location ayarlı değilse, formun varsayılan konumu özelliğin StartPosition tasarım zamanında ne olarak ayarlandığına bağlıdır.

Ayrıca bkz.