Remove() публичный Метод

public Remove ( Component component ) : void
component Component
Результат void
Пример #1
0
        /// <summary>
        /// Entry point into console application.
        /// </summary>

        static void Main()
        {
            // Create a tree structure

            Composite root = new Composite("root");

            root.Add(new Leaf("Leaf A"));
            root.Add(new Leaf("Leaf B"));

            Composite comp = new Composite("Composite X");

            comp.Add(new Leaf("Leaf XA"));
            comp.Add(new Leaf("Leaf XB"));

            root.Add(comp);
            root.Add(new Leaf("Leaf C"));

            // Add and remove a leaf

            Leaf leaf = new Leaf("Leaf D");

            root.Add(leaf);
            root.Remove(leaf);

            // Recursively display tree

            root.Display(1);

            // Wait for user

            Console.ReadKey();
        }
Пример #2
0
        /// <summary>
        /// Entry point into console application.
        /// </summary>
        static void Main()
        {
            // Create a tree structure
            Composite root = new Composite("root");
            root.Add(new Leaf("Leaf A"));
            root.Add(new Leaf("Leaf B"));

            Composite comp = new Composite("Composite X");
            comp.Add(new Leaf("Leaf XA"));
            comp.Add(new Leaf("Leaf XB"));

            root.Add(comp);
            root.Add(new Leaf("Leaf C"));

            // Add and remove a leaf
            Leaf leaf = new Leaf("Leaf D");
            root.Add(leaf);
            root.Remove(leaf);

            // Recursively display tree
            root.Display(1);

            // Wait for user
            Console.ReadKey();
        }
Пример #3
0
        static void Main(string[] args)
        {
            Composite root = new Composite("root");

            root.Add(new Leaf("Leaf A"));
            root.Add(new Leaf("Leaf B"));

            Composite comp = new Composite("Composite X");

            comp.Add(new Leaf("Leaf XA"));
            comp.Add(new Leaf("Leaf XB"));

            root.Add(comp);

            Composite comp2 = new Composite("Composite XY");

            comp2.Add(new Leaf("Leaf XYA"));
            comp2.Add(new Leaf("Leaf XYB"));

            root.Add(comp2);

            root.Add(new Leaf("Leaf C"));

            Leaf leaf = new Leaf("Leaf D");

            root.Add(leaf);
            root.Remove(leaf);

            root.Display(1);
        }
Пример #4
0
        static void Main(string[] args)
        {
            Component root = new Composite("root");

            root.Add(new Leaf("leaf A"));
            root.Add(new Leaf("leaf B"));

            Component comp = new Composite("Composite X");

            comp.Add(new Leaf("leaf XA"));
            comp.Add(new Leaf("leaf XB"));

            root.Add(comp);

            Component comp2 = new Composite("Composite XY");

            comp2.Add(new Leaf("leaf XXA"));
            comp2.Add(new Leaf("leaf XXB"));

            comp.Add(comp2);

            root.Add(new Leaf("leaf C"));

            Leaf leaf = new Leaf("leaf D");

            root.Add(leaf);

            root.Remove(leaf);
            root.Display(1);

            Console.ReadKey();
        }
Пример #5
0
        static void Main(string[] args)
        {
            Component <Pattern> creational = new Composite <Pattern> {
                Name = "Creational Patterns"
            };
            Component <Pattern> builder = new Leaf <Pattern> {
                Name = "Builder"
            };
            Component <Pattern> prototype = new Leaf <Pattern> {
                Name = "Prototype"
            };
            Component <Pattern> singleton = new Leaf <Pattern> {
                Name = "Singleton"
            };

            creational.Add(builder);
            creational.Add(prototype);
            creational.Add(singleton);

            Console.WriteLine(creational.Display());

            var pattern = creational.Find("Prototype");

            Console.WriteLine("Removing: {0}\n", pattern.Name);
            creational.Remove(pattern);

            Console.WriteLine("New list:");
            Console.WriteLine(creational.Display());

            Console.WriteLine("Press enter to exit.");
            Console.ReadLine();
        }
Пример #6
0
        static public void Main()
        {
            //创建根节点,并加入两个叶节点
            Composite root = new Composite("root");

            root.Add(new Leaf("LeafA"));
            root.Add(new Leaf("LeafB"));

            //创建带有叶节点的枝节点,最后加入根节点
            Composite compX = new Composite("CompositeX");

            compX.Add(new Leaf("LeafC"));
            compX.Add(new Leaf("LeafD"));
            compX.Add(new Leaf("LeafE"));
            compX.Remove((Leaf)compX.GetChild(1));
            root.Add(compX);

            //创建更深层的带有叶节点的枝节点,最后加入根节点
            Composite compY = new Composite("CompositeY");
            Composite compZ = new Composite("CompositeZ");

            compX.Add(compY);
            compY.Add(compZ);
            compZ.Add(new Leaf("LeafF"));

            //递归显示
            root.RecurveShow();
        }
Пример #7
0
        static void Main(string[] args)
        {
            Console.WriteLine("Composite");
            Console.WriteLine();

            Composite root = new Composite("ROOT");

            root.Add(new Leaf("Leaf A"));
            root.Add(new Leaf("Leaf B"));

            Composite comp = new Composite("Composite X");

            comp.Add(new Leaf("Leaf XA"));
            comp.Add(new Leaf("Leaf XB"));

            root.Add(comp);
            root.Add(new Leaf("Leaf C"));

            Leaf leaf = new Leaf("Leaf D");

            root.Add(leaf);
            root.Remove(leaf);

            root.Show(1);

            Console.ReadKey();
        }
Пример #8
0
        public static void Run()
        {
            Console.WriteLine("This structural code demonstrates the Composite pattern which allows the creation of a tree structure in which individual nodes are accessed uniformly whether they are leaf nodes or branch (composite) nodes.");
            Composite root1 = new Composite("root");

            root1.Add(new Leaf("Leaf A"));
            root1.Add(new Leaf("Leaf B"));

            Composite comp1 = new Composite("Composite X");

            comp1.Add(new Leaf("Leaf XA"));
            comp1.Add(new Leaf("Leaf XB"));

            root1.Add(comp1);
            root1.Add(new Leaf("Leaf C"));

            Leaf leaf = new Leaf("Leaf D");

            root1.Add(leaf);
            root1.Remove(leaf);

            root1.Display(1);

            /*
             * -root
             * ---Leaf A
             * ---Leaf B
             * ---Composite X
             * -----Leaf XA
             * -----Leaf XB
             * ---Leaf C
             */
        }
Пример #9
0
        static void Main(string[] args)
        {
            Composite root = new Composite("root");

            root.Add(new Leaf("leafA"));

            Composite compositeX = new Composite("compositeX");

            compositeX.Add(new Leaf("leafXA"));
            compositeX.Add(new Leaf("leafXB"));

            Composite compositeY = new Composite("compositeY");

            compositeY.Add(new Leaf("leafYA"));

            root.Add(compositeX);
            root.Add(compositeY);

            Console.WriteLine("the root tree is");
            root.Display(2);

            root.Remove(compositeX);
            Console.WriteLine("after remove compositeX");
            root.Display(2);
        }
Пример #10
0
        static void Main()
        {           
            Composite system = new Composite("System");
            system.Add(new Leaf("System.Element 1"));
            system.Add(new Leaf("System.Element 2"));

            Composite subsystem1 = new Composite("System.Subsystem1");
            subsystem1.Add(new Leaf("System.Subsystem1.Element1"));
            subsystem1.Add(new Leaf("System.Subsystem1.Element2"));

            system.Add(subsystem1);
            system.Add(new Leaf("System.Element 3"));

            Leaf leaf = new Leaf("System.Element 4");
            system.Add(leaf);
            system.Remove(leaf);

            system.Display(1);
            
            Console.ReadKey();
        }
        public static void Run()
        {
            Console.WriteLine("\n Composite structural practice");
            Composite root1 = new Composite("root");

            root1.Add(new Leaf("Leaaf A"));
            root1.Add(new Leaf("Leaf B"));

            Composite comp1 = new Composite("Composite X");

            comp1.Add(new Leaf("Leaf XA"));
            comp1.Add(new Leaf("Leaf XB"));

            root1.Add(comp1);
            root1.Add(new Leaf("Leaf C"));

            Leaf leaf = new Leaf("Leaf D");

            root1.Add(leaf);
            root1.Remove(leaf);

            root1.Display(1);
        }
Пример #12
0
        private static void Main()
        {
            var root = new Composite("Root");

            root.Add(new Leaf("Leaf A"));
            root.Add(new Leaf("Leaf B"));

            var comp = new Composite("Parent A");

            comp.Add(new Leaf("Child A1"));
            comp.Add(new Leaf("Child A2"));

            root.Add(comp);
            root.Add(new Leaf("Leaf C"));

            var leaf = new Leaf("Leaf D");

            root.Add(leaf);
            root.Remove(leaf);

            root.Display(1);

            Console.ReadKey();
        }
Пример #13
0
        static void Main(string[] args)
        {
            Composite root = new Composite("ROOT");

            root.Add(new Leaf("A"));
            root.Add(new Leaf("B"));

            Composite comp = new Composite("COMPOSITE X");

            comp.Add(new Leaf("XA"));
            comp.Add(new Leaf("XB"));

            root.Add(comp);
            root.Add(new Leaf("C"));

            Leaf leaf = new Leaf("D");

            root.Add(leaf);
            root.Remove(leaf);

            root.Show(1);

            Console.ReadKey();
        }
Пример #14
0
        static void Main(string[] args)
        {
            ConcreteCompany companyRoot = new ConcreteCompany("北京總公司");

            companyRoot.Add(new HRDepartment("總公司人力資源部"));
            companyRoot.Add(new FinanceDepartment("總公司財務部"));

            ConcreteCompany companyA = new ConcreteCompany("上海華東分公司");

            companyA.Add(new HRDepartment("華東分公司人力資源部"));
            companyA.Add(new FinanceDepartment("華東分公司財務部"));
            companyRoot.Add(companyA);

            ConcreteCompany companyB = new ConcreteCompany("南京辦事處");

            companyB.Add(new HRDepartment("南京辦事處人力資源部"));
            companyB.Add(new FinanceDepartment("南京辦事處財務部"));
            companyA.Add(companyB);

            ConcreteCompany companyC = new ConcreteCompany("杭州辦事處");

            companyC.Add(new HRDepartment("杭州辦事處人力資源部"));
            companyC.Add(new FinanceDepartment("杭州辦事處財務部"));
            companyA.Add(companyC);

            Console.WriteLine("組織結構圖");
            companyRoot.Display(1);

            Console.WriteLine("\n職責");
            companyRoot.LineOfDuty();

            Console.WriteLine("\n");

            Composite root = new Composite("root");

            root.Add(new Leaf("Leaf A"));
            root.Add(new Leaf("Leaf B"));

            Composite comp = new Composite("Composite X");

            comp.Add(new Leaf("Leaf XA"));
            comp.Add(new Leaf("Leaf XB"));

            root.Add(comp);

            Composite comp2 = new Composite("Composite XY");

            comp2.Add(new Leaf("Leaf XYA"));
            comp2.Add(new Leaf("Leaf XYB"));

            comp.Add(comp2);

            root.Add(new Leaf("Leaf C"));

            Leaf leafD = new Leaf("Leaf D");

            root.Add(leafD);
            root.Remove(leafD);

            root.Display(1);

            Console.ReadLine();
        }