26.07.2017 Views

bilgeadam-c-kitabi

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

62 Modül 9: Windows Programlama<br />

Örnek: Ürün kategorileri, genelde tek kategori olarak ele alınsa da, aslında<br />

hiyerarşik bir yapıda incelenmeleri gerekir. Her kategorinin sonsuz sayıda alt<br />

kategorisi olabilir. Bu tip kategoriler, en iyi şekilde TreeView kontrolü ile<br />

görüntülenebilir.<br />

• Yeni kategori ekleme işlemi kök düğüm ve alt düğüm olarak yapılabilir.<br />

Eğer RadioButton kontrollerinde kök düğüm seçilmişse ana kategori;<br />

alt düğüm seçilmişse, seçilen kategorinin altına bir alt kategori eklenir.<br />

private void btnYeniKategoriEkle_Click(<br />

System.Object sender, System.EventArgs e ) {<br />

TreeNode secilen;<br />

secilen = TreeView1.SelectedNode;<br />

if ( RadioButton1.Checked ) {<br />

// Kök düğüm eklenir<br />

TreeView1.Nodes.Add( txtYeniKategori.Text );<br />

}<br />

else if ( RadioButton2.Checked ) {<br />

// Seçilen kategoriye alt kategori eklenir<br />

secilen.Nodes.Add( txtYeniKategori.Text );<br />

}<br />

}<br />

• Seçilen bir kategorinin silinme işlemi için, o düğümün hangi ana<br />

düğüme ait olduğu bulunmalıdır.<br />

private void btnSil_Click( System.Object sender,<br />

System.EventArgs e ) {<br />

TreeNode secilen = TreeView1.SelectedNode;<br />

if ( !( secilen.Parent == null ) ) { //<br />

Seçilen düğüm, Parent düğümünün Nodes<br />

// koleksiyonundan çıkartılır.<br />

secilen.Parent.Nodes.Remove( secilen );<br />

}<br />

else {<br />

// Eğer Parent yok ise Kök düğümdür.<br />

TreeView1.Nodes.Remove( secilen );

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!