예제 #1
0
        public static FakeViewModel GenerateFakeViewModels(TimeSpan latency)
        {
            var root = new FakeViewModel()
            {
                Latency = latency
            };

            generate(root, 5);
            return(root);
        }
예제 #2
0
 private static void generate(FakeViewModel root, int level, string str = "")
 {
     if (level > 0)
     {
         for (int i = 1; i < 5; i++)
         {
             var vm = new FakeViewModel()
             {
                 Header  = "Sub" + str + i.ToString(),
                 Value   = (root.Value + "\\Sub" + str + i.ToString()).TrimStart('\\'),
                 Latency = root.Latency,
                 Parent  = root
             };
             generate(vm, level - 1, str + i.ToString());
             root._subDirectories.Add(vm);
         }
     }
 }
예제 #3
0
        private void setupBreadcrumb()
        {
            FakeViewModel fvm = new FakeViewModel("Root");

            for (int i = 1; i < 10; i++)
            {
                fvm.SubDirectories.Add(new FakeViewModel("Sub" + i.ToString(), "Sub" + i.ToString() + "1", "Sub" + i.ToString() + "2"));
            }
            breadcrumbCore.ItemsSource     = fvm.SubDirectories;
            breadcrumbCore.RootItemsSource = fvm.SubDirectories;

            //SuggestBoxes
            suggestBoxDummy.SuggestSources = new List <ISuggestSource>(new[] { new DummySuggestSource() });
            suggestBoxAuto.RootItem        = fvm;

            suggestBoxAuto2.HierarchyHelper = suggestBoxAuto.HierarchyHelper =
                new PathHierarchyHelper("Parent", "Value", "SubDirectories");

            //suggestBoxAuto2
            suggestBoxAuto2.RootItem       = FakeViewModel.GenerateFakeViewModels(TimeSpan.FromSeconds(0.5));
            suggestBoxAuto2.SuggestSources = new List <ISuggestSource>(new[] { new AutoSuggestSource() }); //This is default value, suggest based on HierarchyLister.List()


            //breadcrumb
            breadcrumb1.RootItem = FakeViewModel.GenerateFakeViewModels(TimeSpan.FromSeconds(0));
            breadcrumb2.RootItem = FakeViewModel.GenerateFakeViewModels(TimeSpan.FromSeconds(0));

            bool UseGenericHierarchyHelper = true;

            if (UseGenericHierarchyHelper)
            {
                //Generic version is faster than Nongeneric PathHierarchyHelper.
                //This replaced the ParentPath, ValuePath and SubEntriesPath in markup.
                IHierarchyHelper hierarchyHelper = new PathHierarchyHelper <FakeViewModel>("Parent", "Value", "SubDirectories");
                //suggestBoxAuto.HierarchyHelper = hierarchyHelper;
                //suggestBoxAuto2.HierarchyHelper = hierarchyHelper;
                breadcrumb1.HierarchyHelper = hierarchyHelper;
                breadcrumb2.HierarchyHelper = hierarchyHelper;
            }
        }