Exemplo n.º 1
0
        public void Method4()
        {
            try
            {
                Console.Write("Enter the path root directory: ");
                string dirName = Console.ReadLine();

                FileInfos = GetDirList(dirName);

                Console.WriteLine("\r\n-----------------------------------------");
                Console.WriteLine("Navigation:");
                Console.WriteLine("-----------------------------------------");
                int maxId = FileInfos.Max(x => x.Id) + 1;
                FileInfos.Add(new FileInform()
                {
                    Id = maxId, Name = "Root", PrevPath = "Change root directory", TypeFile = "Settings"
                });
                Console.WriteLine($"id: {maxId} | Change root directory");
                Console.WriteLine("-----------------------------------------");

                bool validStart = false;
                while (!validStart)
                {
                    Console.Write("\r\nEnter id: ");
                    string id = Console.ReadLine();

                    int NumId = Validation.ValidNumber(id);

                    if (FileInfos.Exists(x => x.Id == NumId))
                    {
                        FileInform dirInfo = (from t in FileInfos
                                              where t.Id == NumId
                                              select t).First();

                        if (dirInfo.TypeFile == "File")
                        {
                            Console.WriteLine("Only directories can be opened!");
                        }
                        else
                        {
                            validStart = NextDir(dirInfo.Name, dirInfo.Root);
                        }
                    }
                    else
                    {
                        Console.WriteLine("Not found id!");
                    }
                }
            }
            catch (Exception x)
            {
                Console.WriteLine(x.Message);
            }
        }
        private void CurrentItems_OnMouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            FileInform selecItem = (FileInform)CurrentItems.SelectedItem;

            if (selecItem.Path != "DB")
            {
                DirViewerViewModel._events.PublishOnUIThread(new[] { selecItem.Path, selecItem.ExpType, selecItem.Expansion });
            }
            else
            {
                DirViewerViewModel._events.PublishOnUIThread(new[] { selecItem.Path, selecItem.ExpType, selecItem.Expansion });
                DirViewerViewModel._events.PublishOnUIThread(selecItem.FileSourse);
            }
        }