Esempio n. 1
0
        private async void DeviceWatcher_EnumerationCompleted(DeviceWatcher sender, object args)
        {
            if (App.sideBarItems.FirstOrDefault(x => x is HeaderTextItem && x.Text == "Drives") == null)
            {
                App.sideBarItems.Add(new HeaderTextItem()
                {
                    Text = "Drives"
                });
            }
            foreach (DriveItem drive in Drives)
            {
                if (!App.sideBarItems.Contains(drive))
                {
                    App.sideBarItems.Add(drive);
                }
            }

            foreach (INavigationControlItem item in App.sideBarItems.ToList())
            {
                if (item is DriveItem && !Drives.Contains(item))
                {
                    App.sideBarItems.Remove(item);
                }
            }
        }
Esempio n. 2
0
        private async void MainView_Activated(CoreApplicationView sender, Windows.ApplicationModel.Activation.IActivatedEventArgs args)
        {
            await CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Low, () =>
            {
                if (App.sideBarItems.FirstOrDefault(x => x is HeaderTextItem && x.Text == ResourceController.GetTranslation("SidebarDrives")) == null)
                {
                    App.sideBarItems.Add(new HeaderTextItem()
                    {
                        Text = ResourceController.GetTranslation("SidebarDrives")
                    });
                }
                foreach (DriveItem drive in Drives)
                {
                    if (!App.sideBarItems.Contains(drive))
                    {
                        App.sideBarItems.Add(drive);
                    }
                }
                foreach (INavigationControlItem item in App.sideBarItems.ToList())
                {
                    if (item is DriveItem && !Drives.Contains(item))
                    {
                        App.sideBarItems.Remove(item);
                    }
                }
            });

            CoreApplication.MainView.Activated -= MainView_Activated;
        }
Esempio n. 3
0
 private async void DeviceWatcher_EnumerationCompleted(DeviceWatcher sender, object args)
 {
     try
     {
         await CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Low, () =>
         {
             if (App.sideBarItems.FirstOrDefault(x => x is HeaderTextItem && x.Text == ResourceController.GetTranslation("SidebarDrives")) == null)
             {
                 App.sideBarItems.Add(new HeaderTextItem()
                 {
                     Text = ResourceController.GetTranslation("SidebarDrives")
                 });
             }
             foreach (DriveItem drive in Drives)
             {
                 if (!App.sideBarItems.Contains(drive))
                 {
                     App.sideBarItems.Add(drive);
                 }
             }
             foreach (INavigationControlItem item in App.sideBarItems.ToList())
             {
                 if (item is DriveItem && !Drives.Contains(item))
                 {
                     App.sideBarItems.Remove(item);
                 }
             }
         });
     }
     catch (Exception)       // UI Thread not ready yet, so we defer the pervious operation until it is.
     {
         // Defer because UI-thread is not ready yet (and DriveItem requires it?)
         CoreApplication.MainView.Activated += MainView_Activated;
     }
 }
Esempio n. 4
0
        //Wypelnienie listy zawartoscia danej sciezki
        private void RefreshContent(string p)
        {
            string[]      dirs         = Directory.GetDirectories(p);
            string[]      files        = Directory.GetFiles(p);
            List <string> filesAndDirs = new List <string>();

            if (!Drives.Contains(p))
            {
                filesAndDirs.Add("..");
            }

            foreach (var v in dirs)
            {
                //Pominiecie folderow odmawiajacych dostepu
                try
                {
                    Directory.GetDirectories(v);
                }
                catch (Exception)
                {
                    continue;
                }
                filesAndDirs.Add("<D> " + v.Substring(p.Length));
            }
            foreach (var v in files)
            {
                filesAndDirs.Add(v.Substring(p.Length));
            }

            PathContent = filesAndDirs.ToArray();
        }
Esempio n. 5
0
        //Poruszanie sie po dysku
        private void ListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if ((sender as ListBox).SelectedItem != null)
            {
                string temp = Path;
                if (!Path.Last().Equals((char)92))
                {
                    int index = temp.LastIndexOf((char)92);
                    temp = temp.Substring(0, index + 1);
                }
                string item = (sender as ListBox).SelectedItem.ToString();
                if (item == "..")
                {
                    temp = System.IO.Path.GetDirectoryName(temp);
                    temp = System.IO.Path.GetDirectoryName(temp);
                    if (!Drives.Contains(temp))
                    {
                        temp += "\\";
                    }
                    Path = temp;
                    (sender as ListBox).SelectedItem = null;
                    return;
                }
                if (item.Contains("<D> "))
                {
                    temp = temp + item.Substring(4) + "\\";
                    Path = temp;
                    return;
                }

                Path = temp + item;
            }
        }
Esempio n. 6
0
        private async void DeviceWatcher_EnumerationCompleted(DeviceWatcher sender, object args)
        {
            // Only update collection from UI-thread
            try
            {
                await CoreApplication.MainView.Dispatcher.RunAsync(CoreDispatcherPriority.Low, () =>
                {
                    if (App.sideBarItems.FirstOrDefault(x => x is HeaderTextItem && x.Text == ResourceController.GetTranslation("SidebarDrives")) == null)
                    {
                        App.sideBarItems.Add(new HeaderTextItem()
                        {
                            Text = ResourceController.GetTranslation("SidebarDrives")
                        });
                    }
                    foreach (DriveItem drive in Drives)
                    {
                        if (!App.sideBarItems.Contains(drive))
                        {
                            App.sideBarItems.Add(drive);
                        }
                    }

                    foreach (INavigationControlItem item in App.sideBarItems.ToList())
                    {
                        if (item is DriveItem && !Drives.Contains(item))
                        {
                            App.sideBarItems.Remove(item);
                        }
                    }
                });
            }
            catch (Exception)
            {
                // UI thread not created yet?
            }
        }