System.Collections.Hashtable htTeknikSozluk; /* HashTable koleksiyon nesnemizi tanimliyoruz.*/
private void Form1_Load(object sender, System.EventArgs e)
{
    htTeknikSozluk=new System.Collections.Hashtable(); /* HashTable nesnemizi olusturuyoruz.*/
    stbDurum.Text=htTeknikSozluk.Count.ToString(); /* HashTable’imizdaki eleman sayisini Count özelligi ile ögreniyoruz.*/
}
private void btnEkle_Click(object sender, System.EventArgs e)
{
    try
    {
        htTeknikSozluk.Add(txtKey.Text,txtValue.Text);/* HashTable’imiza key-value çifti ekleyebilmek için Add metodu kullaniliyor.*/
        lstAnahtar.Items.Add(txtKey.Text);
        stbDurum.Text=htTeknikSozluk.Count.ToString();
    }
    catch(System.ArgumentException) /* Eger var olan bir key’i tekrar eklemeye çalisirsak bu durumda ArgumentException istisnasi     firlatilacaktir. Bu durumda, belirtilen key-value çifti HashTable koleksiyonuna eklenmez. Bu durumu kullaniciya bildiriyoruz.*/
    {
        stbDurum.Text=txtKey.Text+” Zaten HashTable Koleksiyonunda Mevcut!”;
    }
}
private void lstAnahtar_DoubleClick(object sender, System.EventArgs e)
{
    string deger;
    deger=htTeknikSozluk[lstAnahtar.SelectedItem.ToString()].ToString(); /* HashTable’daki bir degere ulasmak için, köseli parantezler arasinda aranacak key degerini giriyoruz. Sonucu bir string degiskenine aktariyoruz.*/
    MessageBox.Show(deger,lstAnahtar.SelectedItem.ToString());
}
private void btnSil_Click(object sender, System.EventArgs e)
{
    if(htTeknikSozluk.Count==0)Â
    {
        stbDurum.Text=”Çikartilabilecek hiç bir eleman yok”;
    }
    else if(lstAnahtar.SelectedIndex==-1)
    {
        stbDurum.Text=”Listeden bir eleman seçmelisiniz”;
    }
    else
    {
        htTeknikSozluk.Remove(lstAnahtar.SelectedItem.ToString()); /* Bir HashTable’dan bir nesneyi çikartmak için, Remove metodu kullanilir. Bu metod parametre olarak çikartilmak istenen deger çiftinin key degerini alir.*/
        lstAnahtar.Items.Remove(lstAnahtar.SelectedItem);
        stbDurum.Text=”Çikartildi”;
        stbDurum.Text=htTeknikSozluk.Count.ToString();
    }
}
private void btnTumu_Click(object sender, System.EventArgs e)
{
    lstTumListe.Items.Clear(); /* Asagidaki satirlarda, bir HashTable koleksiyonu içinde yer alan tüm elemanlara nasil erisildigini görmekteyiz. Keys metodu ile HashTable koleksiyonumuzda yer alan tüm anahtar degerlerini (key’leri), ICollection arayüzü(interface) türünden bir nesneye atiyoruz. Foreach döngümüz ile bu nesne içindeki her bir anahtari, HashTable koleksiyonunda bulabiliyoruz.*/
    ICollection anahtar=htTeknikSozluk.Keys; foreach(string a in anahtar)
    {
        lstTumListe.Items.Add(a+”=”+htTeknikSozluk[a].ToString());
    }
} |
Yorumlar
Yorum Yok
Yorumunuzu Ekleyin
Yorum eklemek için giris yapmalısınız.