PDA

View Full Version : مبتدی: چه طور می تونم با استفاده از نام یه نود به level اون دسترسی داشته باشم



meri.rad
شنبه 18 مرداد 1393, 20:02 عصر
چه طور می تونم با استفاده از نام یه نود به level اون دسترسی داشته باشم از دستور زیر استفاده می کنم ارور می گیره
treeView2.Nodes[dt.Rows[0]["id"].ToString()].Level

Amiri.projects
شنبه 18 مرداد 1393, 23:38 عصر
; private int globalLevel = -1

(public void GetDeepestNodeLevel(TreeView treeView, string nodName
}
(foreach (System.Windows.Forms.TreeNode node in treeView.Nodes
}
(DigInNodes(node, nodName
{
{

( private void DigInNodes(System.Windows.Forms.TreeNode node,string nodName
}
; int localLevel = node.Level

( if (node.Text == nodName
}
;globalLevel = localLevel
{
else
}
( foreach (System.Windows.Forms.TreeNode subnode in node.Nodes
}
;( DigInNodes(subnode, nodName
{
{

{


شما اسم treeView و اسم نودتون رو به متد اول می فرستید و در متغیر سراسری globalLevel سطح اونو دریافت می کنید.

با کمی تغییر در این دو متد میتونید تعداد نودهای یک نود خاص، تعداد نودهای یک درخت، سطح یک نود خاص و همچنین بیشترین سطح یا همون عمق درخت رو بدست بیارین.

موفق باشید.

meri.rad
یک شنبه 19 مرداد 1393, 08:00 صبح
; private int globalLevel = -1

(public void GetDeepestNodeLevel(TreeView treeView, string nodName
}
(foreach (System.Windows.Forms.TreeNode node in treeView.Nodes
}
(DigInNodes(node, nodName
{
{

( private void DigInNodes(System.Windows.Forms.TreeNode node,string nodName
}
; int localLevel = node.Level

( if (node.Text == nodName
}
;globalLevel = localLevel
{
else
}
( foreach (System.Windows.Forms.TreeNode subnode in node.Nodes
}
;( DigInNodes(subnode, nodName
{
{

{


شما اسم treeView و اسم نودتون رو به متد اول می فرستید و در متغیر سراسری globalLevel سطح اونو دریافت می کنید.

با کمی تغییر در این دو متد میتونید تعداد نودهای یک نود خاص، تعداد نودهای یک درخت، سطح یک نود خاص و همچنین بیشترین سطح یا همون عمق درخت رو بدست بیارین.

موفق باشید.

treeview هیچ property نداره که بشه ازش استفاده کرد؟