C# C# Windows Form

C# List ve Sınıf Kullanım Örneği

C# programlama dilini kullanarak geliştirdiğimiz bu uygulama, film bilgilerini düzenli bir şekilde yönetmek ve kullanıcıların kolayca eklemek, güncellemek, görüntülemek ve silmek için tasarlanmıştır.

Film sınıfını içeren ve DataGridView kontrolü üzerinden etkileşimli bir kullanıcı arayüzü sunan bu uygulama, nesne yönelimli programlama prensiplerini kullanarak verilerin tutulmasını sağlar. Film verilerini içeren BindingList, kullanıcının filmler arasında hızlıca gezinmesini ve verileri güncellemesini mümkün kılar.

Form Tasarımı

Film.cs

Film Sınıfı:

Film sınıfı, bir film nesnesini temsil eden özellikleri içerir. Bu özellikler, bir film hakkındaki temel bilgileri depolar. İlgili özellikler şunlardır:

  • Id (get ve set yöntemleri ile erişilebilir): Film ID’sini temsil eder. Bu özellik, bir filmi diğerlerinden ayırt etmek için benzersiz bir tanımlayıcı sağlar.
  • Ad (get ve set yöntemleri ile erişilebilir): Film adını temsil eder. Bu özellik, filmin ismini içerir.
  • Sure (get ve set yöntemleri ile erişilebilir): Film süresini temsil eder. Bu özellik, filmi ne kadar süreyle izleyeceğimizi belirtir.
  • IzlemeTarih (get ve set yöntemleri ile erişilebilir): Film izleme tarihini temsil eder. Bu özellik, filmi ne zaman izlediğimizi kaydetmek için kullanılır.
  • Tur (get ve set yöntemleri ile erişilebilir): Film türünü temsil eder. Bu özellik, filmi bir kategoriye yerleştirmemize olanak tanır.
  • BegenPuan (get ve set yöntemleri ile erişilebilir): Film beğeni puanını temsil eder. Bu özellik, kullanıcıların filmlere verdikleri puanı saklar.

Film Kurucu Metodu:

Film sınıfının kurucu metodu, bir film nesnesi oluşturulduğunda çağrılır. Bu metot, film nesnesinin özelliklerini başlatır. Kurucu metot içindeki parametreler, bir film nesnesini oluştururken sağlanması gereken değerleri temsil eder. İlgili parametreler şunlardır:

  • id: Film ID’sini belirten bir tamsayı.
  • ad: Film adını belirten bir dize.
  • sure: Film süresini belirten bir tamsayı.
  • tarih: Film izleme tarihini belirten bir DateTime nesnesi.
  • tur: Film türünü belirten bir dize.
  • puan: Film beğeni puanını belirten bir tamsayı.

Kurucu metot, bu parametreleri kullanarak Film nesnesinin özelliklerini başlatır, böylece oluşturulan nesne, belirtilen filmle ilgili bilgileri içerir.

BindingList Oluşturma ve Form_Load

Bu koddaki işlemleri açıklayalım:

  1. BindingList<Film> filmler: Film sınıfından nesneleri içeren bir BindingList oluşturuluyor. BindingList, koleksiyon içindeki öğelerde yapılan değişiklikleri otomatik olarak algılayan ve bu değişiklikleri veri bağlaması üzerinde yansıtan bir koleksiyon türüdür.
  2. Film film1 = new Film(1, "Yeşil Yol", 189, new DateTime(2023, 10, 05), "Dram", 9);: Birinci film nesnesi olan film1 oluşturuluyor. Bu film “Yeşil Yol” adında, 189 dakika süresinde, 2023-10-05 tarihinde izlenmiş, “Dram” türünde ve 9 beğeni puanına sahiptir.
  3. Film film2 = new Film(2, "Kabadayı", 140, new DateTime(2020, 05, 14), "Aksiyon", 8);: İkinci film nesnesi olan film2 oluşturuluyor. Bu film “Kabadayı” adında, 140 dakika süresinde, 2020-05-14 tarihinde izlenmiş, “Aksiyon” türünde ve 8 beğeni puanına sahiptir.
  4. Film film3 = new Film(3, "Esaretin Bedeli",142, new DateTime(2019, 11, 11), "Dram", 10);: Üçüncü film nesnesi olan film3 oluşturuluyor. Bu film “Esaretin Bedeli” adında, 142 dakika süresinde, 2019-11-11 tarihinde izlenmiş, “Dram” türünde ve 10 beğeni puanına sahiptir.
  5. Film film4 = new Film(4, "Batman Başlıyor", 140, new DateTime(2022, 12, 10), "Aksiyon",5);: Dördüncü film nesnesi olan film4 oluşturuluyor. Bu film “Batman Başlıyor” adında, 140 dakika süresinde, 2022-12-10 tarihinde izlenmiş, “Aksiyon” türünde ve 5 beğeni puanına sahiptir.
  6. filmler.Add(film1); filmler.Add(film2); filmler.Add(film3); filmler.Add(film4);: Oluşturulan film nesneleri, filmler BindingList’ine eklenir. Bu sayede, filmler koleksiyonu, DataGridView kontrolüne bağlandığında otomatik olarak güncellenecektir.
  7. dataGridView1.DataSource = filmler;: DataGridView kontrolü, filmler koleksiyonunu veri kaynağı olarak kullanır. Bu sayede DataGridView otomatik olarak film verilerini görüntüler.

Yukarıdaki işlemler, form yüklendiğinde (Form1_Load olayı gerçekleştiğinde) çalışır ve belirtilen filmleri içeren bir BindingList’i DataGridView kontrolüne bağlar. Bu, filmleri göstermek ve DataGridView üzerinde işlemler yapmak için kullanışlı bir temel oluşturur.

Ekle Butonu Olayı

Bu kod bloğu, kullanıcının bir film eklemek amacıyla butona tıkladığında gerçekleşen olayları içerir. İşlemleri adım adım açıklayalım:

  1. Kullanıcıdan Giriş Alma:
    • int id = Convert.ToInt32(txtId.Text);: Kullanıcının girdiği film ID’sini alır. txtId adlı bir TextBox kontrolü üzerinden alınan metin, tamsayıya dönüştürülerek id değişkenine atanır.
    • string ad = txtAd.Text;: Film adını alır. Kullanıcının girdiği metni txtAd adlı TextBox kontrolünden alır ve ad değişkenine atar.
    • int sure = Convert.ToInt32(txtSure.Text);: Film süresini alır. txtSure adlı TextBox kontrolünden alınan metni tamsayıya dönüştürerek sure değişkenine atar.
    • DateTime tarih = dtTarih.Value;: Film izleme tarihini alır. dtTarih adlı DateTimePicker kontrolünden alınan değeri tarih değişkenine atar.
    • string tur = cmbTur.Text;: Film türünü alır. cmbTur adlı ComboBox kontrolünden seçilen metni tur değişkenine atar.
    • int puan = tbBegen.Value;: Film beğeni puanını alır. tbBegen adlı TrackBar kontrolünden alınan değeri puan değişkenine atar.
  2. Film Nesnesi Oluşturma:
    • Film film = new Film(id, ad, sure, tarih, tur, puan);: Yukarıda alınan bilgilerle yeni bir Film nesnesi oluşturulur.
  3. Film Nesnesini Listeye Ekleme:
    • filmler.Add(film);: Oluşturulan Film nesnesi, filmler BindingList’ine eklenir. Bu sayede DataGridView otomatik olarak güncellenir.
  4. DataGridView’yi Yenileme:
    • dataGridView1.Refresh();: DataGridView kontrolünü yeniler. Bu, ekrandaki verileri günceller ve yeni eklenen filmi görüntüler.

Bu metodun temel amacı, kullanıcının girdiği bilgilerle bir Film nesnesi oluşturup, bu nesneyi filmler koleksiyonuna ekleyerek DataGridView üzerinde güncellemektir.

DataGridView Seçim Olayı

Bu kod parçası, bir DataGridView kontrolünde kullanıcının bir satır seçtiğinde çalışan bir olayı işler. İşlemleri şu şekilde özetleyebiliriz:

  1. Satır Seçimi Kontrolü:
    • Kullanıcı bir satır seçmişse (SelectedRows.Count > 0), aşağıdaki işlemler gerçekleştirilir.
  2. Seçili Film Nesnesini Alma:
    • Seçilen satırın içinde bulunan DataBoundItem özelliği kullanılarak, seçilen satıra bağlı olan Film nesnesi alınır.
  3. Form Kontrollerini Güncelleme:
    • Seçilen film nesnesinin özellikleri, form üzerindeki ilgili kontrol değerlerine atanır. Bu sayede, kullanıcı seçili filmle ilgili bilgileri form üzerinde görüntüleyebilir veya düzenleyebilir.

Bu kod parçası, kullanıcının DataGridView’den bir film seçmesi durumunda, bu seçilen filmin bilgilerini ilgili form kontrol elemanlarına aktararak kullanıcı etkileşimine olanak tanır.

Güncelle Butonu Olayı

Bu kod parçası, kullanıcının DataGridView üzerinde seçili bir filmi güncellemesi için tasarlanmış bir olayı işler. İşlemleri şu şekilde özetleyebilirim:

  1. Seçili Film Kontrolü:
    • Kullanıcı bir film seçmişse (SelectedRows.Count > 0), aşağıdaki işlemler gerçekleştirilir.
  2. Seçili Film Nesnesini Alma:
    • Seçilen satırın içinde bulunan DataBoundItem özelliği kullanılarak, seçilen satıra bağlı olan Film nesnesi alınır.
  3. Film Bilgilerini Güncelleme:
    • Seçili film nesnesinin özellikleri, form üzerindeki güncellenmiş kontrol değerleri ile güncellenir.
  4. DataGridView’i Yenileme:
    • DataGridView kontrolü yenilenir. Bu, güncellenmiş verileri gösterir.

Bu kod parçası, kullanıcının seçili bir filmi form üzerindeki kontrollerle güncellemesini sağlamaktadır.

Sil Butonu Olayı

Bu kod parçası, kullanıcının DataGridView üzerinde seçili bir filmi silmesi için tasarlanmış bir olayı işler. İşlemleri şu şekilde özetleyebilirim:

  1. Seçili Film Kontrolü:
    • Kullanıcı bir film seçmişse (SelectedRows.Count > 0), aşağıdaki işlemler gerçekleştirilir.
  2. Seçili Film Nesnesini Alma:
    • Seçilen satırın içinde bulunan DataBoundItem özelliği kullanılarak, seçilen satıra bağlı olan Film nesnesi alınır.
  3. Silme İşlemini Onaylama:
    • Kullanıcıya, seçilen filmin silinip silinmeyeceğini sormak için bir iletişim kutusu görüntülenir.
  4. Silme İşlemi:
    • Kullanıcı “Evet” seçeneğini seçerse, seçilen film koleksiyondan kaldırılır ve DataGridView güncellenir. Bu, silinen filmi göstermeyi günceller.

Bu kod parçası, kullanıcının seçili bir filmi silmesini sağlamak için gerekli kontrolleri ve işlemleri içerir.

Sonuç

Bu C# uygulaması, Film sınıfı üzerine inşa edilmiş ve DataGridView kontrolü ile desteklenmiş bir film arşivleme sistemidir. Kullanıcılar, arayüz üzerinden film ekleyebilir, bilgilerini güncelleyebilir, silme işlemleri gerçekleştirebilir ve film listesini görüntüleyebilir.

Nesne yönelimli programlama ile tasarlanmış olan bu uygulama, kullanıcı dostu bir deneyim sunarak film bilgilerinin etkili bir şekilde yönetilmesini amaçlar.

Yorum Yap

Yorum yapmak için tıklayın