コード例 #1
0
ファイル: TreeViewOPs.cs プロジェクト: VaHaBBeaT/Catalog
        public static void CreateFilmTree(TreeView tree)
        {
            XDocument xDoc = FileOPs.LoadXmlFile(form_Catalog.filmFileName);

            tree.Nodes.Clear();
            tree.Nodes.Add(new TreeNode(xDoc.Root.Name.ToString()));

            List <Film> parse           = FileOPs.ParseFilmXmlToList(form_Catalog.filmFileName);
            List <Film> noDupesProducer = parse.GroupBy(a => a.filmProducer).Select(grp => grp.FirstOrDefault()).OrderBy(a => a.filmProducer).ToList();

            foreach (Film nDP in noDupesProducer)
            {
                tree.Nodes[0].Nodes.Add(nDP.filmProducer);
                List <Film> filmTitle = parse.FindAll(x => x.filmProducer.Equals(nDP.filmProducer)).OrderBy(s => s.filmTitle).ToList();

                foreach (var ft in filmTitle)
                {
                    tree.Nodes[0].Nodes[noDupesProducer.IndexOf(nDP)].Nodes.Add(ft.filmTitle);
                }
            }

            tree.ExpandAll();

            FileOPs.SetFilmLastID();
        }
コード例 #2
0
ファイル: TreeViewOPs.cs プロジェクト: VaHaBBeaT/Catalog
        public static void CreateBookTree(TreeView tree)
        {
            XDocument xDoc = FileOPs.LoadXmlFile(form_Catalog.bookFileName);

            tree.Nodes.Clear();
            tree.Nodes.Add(new TreeNode(xDoc.Root.Name.ToString()));

            List <Book> parse         = FileOPs.ParseBookXmlToList(form_Catalog.bookFileName);
            List <Book> noDupesAuthor = parse.GroupBy(a => a.bookAuthor).Select(grp => grp.FirstOrDefault()).OrderBy(a => a.bookAuthor).ToList();

            foreach (Book nDA in noDupesAuthor)
            {
                tree.Nodes[0].Nodes.Add(nDA.bookAuthor);
                List <Book> bookSeries = parse.FindAll(x => x.bookAuthor.Equals(nDA.bookAuthor)).GroupBy(s => s.bookSeries).Select(grp => grp.FirstOrDefault()).OrderBy(s => s.bookSeries).ToList();

                foreach (var bs in bookSeries)
                {
                    tree.Nodes[0].Nodes[noDupesAuthor.IndexOf(nDA)].Nodes.Add(bs.bookSeries);
                    List <Book> bookTitle = parse.FindAll(x => x.bookAuthor.Equals(nDA.bookAuthor) && x.bookSeries.Equals(bs.bookSeries));

                    foreach (var bn in bookTitle)
                    {
                        tree.Nodes[0].Nodes[noDupesAuthor.IndexOf(nDA)].Nodes[bookSeries.IndexOf(bs)].Nodes.Add(bn.bookTitle);
                    }
                }
            }

            tree.ExpandAll();

            FileOPs.SetBookLastID();
        }
コード例 #3
0
ファイル: form_ViewXML.cs プロジェクト: VaHaBBeaT/Catalog
 private void form_ViewXML_Load(object sender, EventArgs e, string file)
 {
     rtbXMLInfo.Text = FileOPs.LoadXmlFile(file).ToString();
 }