KONU : C Sharp ( C# ) Form Uygulamalar Treeview Nesnesinin Kullanımı. Treeview da node lara tıklama olayı. Afterselect olayının kullanımı ile ilgili örnekler. Alt alta node ekleme, Eklenen nodeların ikonlarını değiştirme, C Sharp Treeview farklı seviyeler için farklı ikon kullanımı, c sharp treeview nesnesine ikon bağlama ve ikon seçme.
UYGULAMAYI İNDİR
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace TreeView
{
public partial class Form1 : Form
{
private System.Windows.Forms.TreeView treeView;
private System.Windows.Forms.Label lblHangiNodeTiklandi;
public Form1()
{
InitializeComponent();
InitializeMyComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
//treeview ya bir ikon ekleme, burada iki farklı ikon ekle
//birincisini en üst nodelar için kullan
//diğer ikonu sadece en alt nodelar için kullan
ImageList il = new ImageList();
il.Images.Add(new Icon("folder.ico"));
il.Images.Add(new Icon("Turkiye.ico"));
treeView.ImageList = il;
//treeview için bir node oluştur .Bu ana node olacak adıda "System Database" olsun
TreeNode node = new TreeNode("System Database");
////Ana node altına 4 tane node ekleyelim
node.Nodes.Add("Attributes");
node.Nodes.Add("Positions");
node.Nodes.Add("Radio Trunks");
node.Nodes.Add("Line Trunks");
// 2. alt nodun altına da yeni node lar ekleyelim
for (int i = 0; i < 2; i++)
{
node.Nodes[1].Nodes.Add("POS " + (i + 1));
// Bu node un resmini değiştir => türkiye.ico olarak güncelleyelim
// bunun için bu node un alt node larınının imageindex ini 1 yapmamız yeterli olacak
node.Nodes[1].Nodes[i].ImageIndex = 1;
}
// 3. alt nodun altına da yeni node lar ekleyelim
for (int i = 0; i < 8; i++)
{
node.Nodes[2].Nodes.Add("RADIO" + (i + 1));
// Bu node un resmini değiştir => türkiye.ico olarak güncelleyelim.
node.Nodes[2].Nodes[i].ImageIndex = 1;
}
// 4. alt nodun altına da yeni node lar ekleyelim
for (int i = 0; i < 4; i++)
{
node.Nodes[3].Nodes.Add("LINE" + (i + 1));
// Bu node un da resmini değiştirelim.
node.Nodes[3].Nodes[i].ImageIndex = 1;
}
//ana node u treeview a eklenince ağaç görünümümüz oluştu
treeView.Nodes.Add(node);
}
/// treeview da bir eleman seçilmiş veya tıklanmış ise bu metot tetiklenecek
/// bu işlemi InitializeMyComponent metodunda treview nesnesinin afterselect olayına
/// bu metodu bağlayarak gerçeklerştirdim.
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
//treeview da bir node tıklanınca o node ile ilgili istediğimi işlemi yaptıralım
//Eğer seçili bir node yoksa hiçbir şey yapmadan geri dönsün
if (treeView.SelectedNode == null)
{
return;
}
//form yerleştirdiğim etikete tıklanan nodun text değerini yazdıracağım
lblHangiNodeTiklandi.Text = "Tıklanan Node :" + treeView.SelectedNode.Text;
//Seçilen veya tıklanan node ile ilgili işlemleri aşağıdaki gibi yapabilirim
if (treeView.SelectedNode.Text == "System Database")
{
MessageBox.Show("burada Ana node " + treeView.SelectedNode.Text +
" ile ilgili işlmeler yaptırılır");
}
else if (treeView.SelectedNode.Text == "Positions")
{
MessageBox.Show("burada Alt node " + treeView.SelectedNode.Text +
" ile ilgili işlmeler yaptırılır");
}
else if (treeView.SelectedNode.Text == "Radio Trunks")
{
MessageBox.Show("burada Alt node " + treeView.SelectedNode.Text +
" ile ilgili işlmeler yaptırılır");
}
else if (treeView.SelectedNode.Text == "Line Trunks")
{
MessageBox.Show("burada Alt node " + treeView.SelectedNode.Text +
" ile ilgili işlmeler yaptırılır");
}
}
///
/// programda kullanılacak kontrollerin ayarlarını yapma.
///
private void InitializeMyComponent()
{
this.treeView = new System.Windows.Forms.TreeView();
this.lblHangiNodeTiklandi = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// treeView
//
this.treeView.Location = new System.Drawing.Point(12, 12);
this.treeView.Name = "treeView";
this.treeView.Size = new System.Drawing.Size(161, 349);
this.treeView.TabIndex = 0;
this.treeView.AfterSelect += new
System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect);
//
// lblHangiNodeTiklandi
//
this.lblHangiNodeTiklandi.AutoSize = true;
this.lblHangiNodeTiklandi.Location = new System.Drawing.Point(244, 24);
this.lblHangiNodeTiklandi.Name = "lblHangiNodeTiklandi";
this.lblHangiNodeTiklandi.Size = new System.Drawing.Size(35, 13);
this.lblHangiNodeTiklandi.TabIndex = 1;
this.lblHangiNodeTiklandi.Text = "label1";
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(398, 490);
this.Controls.Add(this.lblHangiNodeTiklandi);
this.Controls.Add(this.treeView);
this.Name = "Form1";
this.Text = "Treview Application";
this.Load += new System.EventHandler(this.Form1_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
}
}

Hiç yorum yok :
Yorum Gönder