Aracılığıyla paylaş


Pencere veya iletişim kutusu açma (WPF .NET)

Kendi pencerelerinizi oluşturabilir ve bunları Windows Presentation Foundation'da (WPF) görüntüleyebilirsiniz. Bu makalede kalıcı ve modsuz pencerelerin ve iletişim kutularının nasıl görüntüleneceğini öğreneceksiniz.

Kavramsal olarak, bir pencere ve iletişim kutusu aynı şeydir: bilgi veya etkileşim sağlamak için kullanıcıya görüntülenirler. İkisi de "pencere" nesneleridir. Pencerenin tasarımı ve kullanılma şekli, iletişim kutusunu oluşturandır. İletişim kutusunun boyutu genellikle küçüktür ve kullanıcının buna yanıt vermesini gerektirir. Daha fazla bilgi için bkz . WPF pencerelerine genel bakış ve İletişim kutularına genel bakış.

İşletim sistemi iletişim kutularını açmak istiyorsanız bkz . Ortak iletişim kutusu açma.

Kalıcı olarak aç

Kalıcı bir pencere açıldığında, genellikle bir iletişim kutusunu temsil eder. WPF, etkileşimi kalıcı pencereyle kısıtlar ve pencereyi açan kod pencere kapanana kadar duraklatılır. Bu mekanizma, kullanıcıya veri sormanız ve yanıtını beklemeniz için kolay bir yol sağlar.

ShowDialog Bir pencere açmak için yöntemini kullanın. Aşağıdaki kod pencereyi oluşturur ve mod olarak açar. Pencereyi açan kod duraklatılır ve pencerenin kapatılmasını bekler:

var window = new Margins();

window.Owner = this;
window.ShowDialog();
Dim myWindow As New Margins()

myWindow.Owner = Me
myWindow.ShowDialog()

Önemli

Bir pencere kapatıldıktan sonra, pencereyi yeniden açmak için aynı nesne örneği kullanılamaz.

Bir iletişim kutusuna kullanıcı yanıtını işleme hakkında daha fazla bilgi için bkz . İletişim kutularına genel bakış: Yanıtı işleme.

Modeless olarak aç

Bir pencereyi modsuz açmak, pencereyi normal bir pencere olarak görüntülemek anlamına gelir. Pencere görünür hale geldikçe pencereyi açan kod çalışmaya devam eder. Kısıtlama olmadan, uygulamanız tarafından görüntülenen tüm modsuz pencerelere odaklanabilir ve bunlarla etkileşim kurabilirsiniz.

Show Bir pencere açmak için yöntemini kullanın. Aşağıdaki kod pencereyi oluşturur ve modeless olarak açar. Pencereyi açan kod çalışmaya devam eder:

var window = new Margins();

window.Owner = this;
window.Show();
Dim myWindow As New Margins()

myWindow.Owner = Me
myWindow.Show()

Önemli

Bir pencere kapatıldıktan sonra, pencereyi yeniden açmak için aynı nesne örneği kullanılamaz.

Ayrıca bkz.