C# Mesaj Penceresi (MessageBox) Kullanımı

Rooster

only business
Legend Member
Joined
Aug 10, 2019
Topics
727
Messages
3,206
Solutions
314
Reaction score
4,859
Location
Milano
C# form uygulamalarında mesaj penceresi (MessageBox), kullanıcı çeşitli işlemler yaparken bazı önemli durumlar meydana geldiğinde, uyarı, bilgilendirme ve hata mesajları göstermek için açılan, yardımcı pencerelerdir. Ayrıca kullanıcının bu pencere üzerindeki seçimine bağlı olarak farklı kod bloklarının çalışmasını da sağlayabiliriz. Konuya en iyi örnek, office uygulamalarında Kapat butonuna tıklandığında açılan aşağıdaki pencere olacaktır.

word çıkış Word Programı Kapat Butonu Mesaj Penceresi
Tüm mesaj bildirim işlemleri için MessageBox.Show() metodu kullanılmaktadır. Bu metodun birçok parametresi bulunmakta ve bu durum esnek bir kullanım sağlamaktadır.

Basit Bir Bildirim Penceresi Oluşturmak
En basit haliyle bir mesaj penceresi başlık ve kullanıcıya sunulacak bir mesajdan oluşur. Metodun 1.parametresi mesajı, 2.parametresi başlığı gösterir.

1
MessageBox.Show("Kayıt İşlemi Tamamlandı!", "Bilgilendirme Penceresi");
Kod çalıştırıldığında aşağıdaki gibi başlık ve mesajı içeren bir pencere gösterilir. Tamam butonuna tıklandığında pencere kapanır.

simple messagebox
Pencere Düğmelerini Belirlemek
Yukarıdaki örnekten farklı olarak mesaj penceremize Tamam butonu yerine, gerektiği yerlerde farklı seçimler yapabileceğimiz düğmeler ekleyebiliriz. Bu durumda metodumuzun 3.parametresi olan düğme seçeneklerini, aşağıdaki gibi kodumuza ekliyoruz.

1
MessageBox.Show("Değişiklikleri kaydetmek istiyor musunuz?", "Bilgilendirme Penceresi",MessageBoxButtons.YesNoCancel);
messagebox evet hayır iptal Evet-Hayır-İptal Düğme Seçenekleri
Evet-Hayır-İptal seçenekleri yerine farklı düğme alternatifleri kullanmak isterseniz aşağıdaki tabloyu inceleyiniz.

MessageBoxButtons
Gösterilecek Seçenekler
AbortRetryIgnore
İptal-Yeniden Dene-Yoksay
OK
Tamam
OKCancel
Tamam-İptal
RetryCancel
Yeniden Dene-İptal
YesNo
Evet-Hayır
YesNoCancel
Evet-Hayır-İptal


Pencereye Icon Eklemek
Gösterdiğimiz mesajın konusuna uygun olarak bir icon seçimi yapmak, mesajlarımızın daha profesyonel görünmesini sağlayacaktır. Show() metodumuzun 4.parametresi icon seçimi yapmak için kullanılmaktadır.

1
MessageBox.Show("Değişiklikleri kaydetmek istiyor musunuz?", "Bilgilendirme Penceresi",MessageBoxButtons.YesNoCancel,MessageBoxIcon.Information);
messagebox icon Pencere Bilgi Iconu
Örnekte oluşan soldaki küçük resim bilgilendirme (information) anlamı taşımaktadır. Farklı ikonlar kullanmak isterseniz, aşağıdaki tablodan yararlanabilirsiniz.
MessageBoxIcon
Asterisk
Error
Exclamation
Hand
Information
Question
Stop
Warning


Basılan Düğmeye Göre Çalıştırılacak Kod Bloklarını Belirlemek
Bazen kullanıcının yaptığı seçime bağlı olarak bazı kodların çalıştırılması istenebilir. Örneğin kullanıcı Kaydet butonuna tıkladığında mesaj penceresi açılır, eğer kullanıcı Evet seçeneğini seçerse kayıt veritabanına eklenir gibi. Farklı düğme seçeneklerine göre işlemler yaptırmak için DialogResult özelliğini kullanacağız.


Code:
DialogResult secenek= MessageBox.Show("Kaydı veritabanına kaydetmek istiyor musunuz?", "Bilgilendirme Penceresi",MessageBoxButtons.YesNo,MessageBoxIcon.Information);[/COLOR][/CENTER]
[COLOR=rgb(184, 49, 47)][CENTER] 
            if (secenek == DialogResult.Yes)
            {
                //Veritabanına kayıt ekleyen kodlar
            }
            else if(secenek==DialogResult.No)
            {
                //Hayır seçeneğine tıklandığında çalıştırılacak kodlar
            }

Hayır seçeneğine tıklandığında özel bir kod çalıştırmak istemezseniz else-if bloğunu kullanmak zorunda değilsiniz. Sadece üsteki if bloğu işimizi görecektir. DialogResult’ı sadece Evet-Hayır değil, farklı seçimlere göre de işlem yapacak şekilde ayarlayabilirsiniz.

MessageBox kullanımıyla ilgili gereksiz detaylara girmeden en önemli kısımlara değinmek istedim, konuyla ilgili sorularınızı bana iletebilirsiniz.
 

Top