السبت، 12 يوليو 2014

Tree View

Tree View
أداه ال Tree View تقوم بعرض البيانات علي شكل شجري. المثال التالي سوف نتعرف علي كيفية ملئ أدة ال Tree View بالبيانات, وكيفة حذف فرع محدد Selected Node, وحذف كامل الشجرة Tree View , وحذف جمع الفروع المحدد بعلامة الصح  Check Box.
الأدوات:
Tree View
Button Add Node
Button Remove Selected Node
Button Clear Node
Button Remove Checked Nodes

Lable SelectNode


1- ملئ ال Tree View.
private void btnAddNodes_Click(object sender, EventArgs e)
        {
            treeView1.Nodes.Add("Books");
            treeView1.Nodes[0].Nodes.Add("Book1");
            treeView1.Nodes[0].Nodes.Add("Book2");
            treeView1.Nodes[0].Nodes.Add("Book3");

            treeView1.Nodes.Add("Papers");
            treeView1.Nodes[1].Nodes.Add("Papers1");
            treeView1.Nodes[1].Nodes.Add("Papers2");
            treeView1.Nodes[1].Nodes.Add("Papers3");

            treeView1.Nodes.Add("Folders");
            treeView1.Nodes[2].Nodes.Add("Folders1");
            treeView1.Nodes[2].Nodes.Add("Folders2");
            treeView1.Nodes[2].Nodes.Add("Folders3");
        }


2- حذف ال Selected Node


        private void btnRemoveSelected_Click(object sender, EventArgs e)
        {
            treeView1.SelectedNode.Remove();
        }

تم حذف Book2.



3- حذف جميع ال Nodes.

private void btnClear_Click(object sender, EventArgs e)
        {
            treeView1.Nodes.Clear();
        }

4- حذف جمع الفروع المحدد بعلامة الصح Check. أولا يجب تغير الخاصية CheckBoxes لأداة ال Tree View إلى القيمة True لكي يتم تفعيل علامة الصح Check Box.



  private void btnRemoveCheck_Click(object sender, EventArgs e)
        {
            RemoveCheckedNodes(treeView1.Nodes);
        }


List<TreeNode> lstcheckedNodes = new List<TreeNode>();

private void RemoveCheckedNodes(TreeNodeCollection nodes)
        {
            foreach (TreeNode node in nodes)
            {
                if (node != null)
                {
                    if (node.Checked)
                    {
                        lstcheckedNodes.Add(node);
                    }
                    else
                    {
                        RemoveCheckedNodes(node.Nodes);
                    }
                }
            }

            foreach (TreeNode checkedNode in lstcheckedNodes)
            {
                nodes.Remove(checkedNode);
            }
        }







ليست هناك تعليقات:

إرسال تعليق

يسعدني إرسال تعليقاتكم وأسئلتكم واقتراحاتكم