示例#1
0
 private void buildTree(string p, IList <ReportDTO> res, ObservableCollection <TreeElementViewModel <ReportCommandVM> > tree)
 {
     res.Where(l => l.Path == p).ToList().ForEach(parentElement =>
     {
         var x = new TreeElementViewModel <ReportCommandVM>
         {
             IsExpanded = false,
             Childs     = new ObservableCollection <TreeElementViewModel <ReportCommandVM> >()
         };
         if (parentElement.TypeName == "Report")
         {
             x.Data = new ReportCommandVM(parentElement.Description, new DelegateCommand(
                                              () =>
             {
                 controller.OpenReport(parentElement);
             }
                                              ));
         }
         else
         {
             x.Data = new ReportCommandVM(parentElement.Description, new DelegateCommand(
                                              () =>
             {
             }
                                              ), true);
         }
         buildTree(p + parentElement.Name + "/", res, x.Childs);
         tree.Add(x);
     });
 }