✅ 12.5 – Formdan Not Ekleme, Silme, Listeleme (Uygulamalı Örnekler)
Bu bölümde, kullanıcı arayüzü üzerinden yapılan işlemleri uygulamalı olarak örneklendireceğiz. Her bir örnek, gerçek senaryolarla uyumlu olacak.
📌
Örnek 1: Basit Not Ekleme
Senaryo:
Kullanıcı “Alışveriş Listesi” başlıklı bir not girer.
txtBaslik.Text = "Alışveriş Listesi";
txtIcerik.Text = "Yumurta\nSüt\nEkmek";
btnEkle.PerformClick();
Beklenen Sonuç:
Listeye yeni not eklenir ve kullanıcıya başarı mesajı gösterilir.
📌
Örnek 2: Listeleme Sonrası Görüntüleme
Senaryo:
Kullanıcı “Listele” butonuna tıklayarak tüm notları görmek ister.
btnListele.PerformClick();
Beklenen Sonuç:
ListBox içinde en son eklenen notlar yukarıda olacak şekilde görüntülenir.
Örnek:
- Alışveriş Listesi (09.06.2025)
- Kitap Tavsiyeleri (08.06.2025)
📌
Örnek 3: Aynı Başlıkla Not Ekleme (Çakışma Riski)
Senaryo:
Kullanıcı tekrar “Alışveriş Listesi” başlığıyla yeni bir not ekler.
txtBaslik.Text = "Alışveriş Listesi";
txtIcerik.Text = "Peynir\nDomates";
btnEkle.PerformClick();
Beklenen Sonuç:
Listeye ikinci bir “Alışveriş Listesi” notu eklenir.
Ancak silme işlemi başlığa göre olduğu için yalnızca ilk bulunan silinir.
📌 İyileştirme Notu: Not sınıfına Guid gibi benzersiz bir ID eklenmesi önerilir.
📌
Örnek 4: Not Silme İşlemi
Senaryo:
Kullanıcı, ListBox’tan “Alışveriş Listesi” notunu seçer ve “Sil” butonuna tıklar.
lstNotlar.SelectedIndex = 0; // İlk not seçili
btnSil.PerformClick();
Beklenen Sonuç:
Seçilen not silinir. Liste güncellenir ve silinen not artık görünmez.
📌
Örnek 5: Boş Alanla Not Ekleme Girişimi
Senaryo:
Kullanıcı, başlık veya içerik alanını boş bırakarak “Ekle” butonuna tıklar.
txtBaslik.Text = "";
txtIcerik.Text = "Bir şeyler yazılıyor...";
btnEkle.PerformClick();
Beklenen Sonuç:
Kullanıcıya “Başlık ve içerik boş olamaz!” uyarısı gösterilir. Not eklenmez.
🎯
Bölüm Özeti:
Bu örnekler sayesinde öğrenci:
- Katmanlı mimaride veri akışını gerçek senaryolarla anlar
- Kodun parçalara bölünmüş yapısının faydasını gözlemler
- Form kontrolleri ile mantık sınıfı arasındaki ilişkiyi net şekilde kavrar