private void LsvFolders_MouseDoubleClick(object sender, MouseButtonEventArgs e) { FolderBrowserItem lObjFolderBrowserItem = lsvFolders.SelectedItem as FolderBrowserItem; DirectoryInfo lObjSelected = null; if (lObjFolderBrowserItem != null) { lObjSelected = (DirectoryInfo)lObjFolderBrowserItem.Object; lstFolders.Clear(); lstFolders.Add(new FolderBrowserItem() { Icon = "Arrow", Name = "Regresar", Object = null }); foreach (DirectoryInfo lObjDirectoryInfo in lObjSelected.GetDirectories()) { lstFolders.Add(new FolderBrowserItem() { Icon = "Folder", Name = lObjDirectoryInfo.Name, Object = lObjDirectoryInfo }); } lsvFolders.ItemsSource = null; lsvFolders.ItemsSource = lstFolders; } }
public static void FolderBrowserItem_Pre(FolderBrowserItem item, string path) { if (path == Utils.Remote) { Execute.BeginOnUIThread(item.RefreshItems); } }
public static bool RefreshItems_Pre(FolderBrowserItem item) { if (item.DirectoryPath != Utils.Remote) { return(false); } item.Items.Clear(); Task.Run(async() => { string worlds = await Utils.GetStringAsync(Utils.GetConfig("remote_worlds_uri", "worlds.txt")); var newItems = worlds.Trim().Split('\n').Select(x => x.Trim()).Where(x => !string.IsNullOrEmpty(x)) .Select(x => new MinecraftLevelBrowserItem(Utils.Remote + "/" + x)); Execute.BeginOnUIThread(() => item.Items.AddRange(newItems)); }).ConfigureAwait(false); return(true); }
private void LsvDevices_SelectionChanged(object sender, SelectionChangedEventArgs e) { FolderBrowserItem lObjFolderBrowserItem = (FolderBrowserItem)lsvDevices.SelectedItem; DriveInfo lObjDriveInfo = (DriveInfo)lObjFolderBrowserItem.Object; lstFolders.Clear(); foreach (DirectoryInfo lObjDirectoryInfo in lObjDriveInfo.RootDirectory.GetDirectories()) { lstFolders.Add(new FolderBrowserItem() { Icon = "Folder", Name = lObjDirectoryInfo.Name, Object = lObjDirectoryInfo }); } lsvFolders.ItemsSource = null; lsvFolders.ItemsSource = lstFolders; }
private void UpdateFileBrower(string path) { try { string[] directories; try { if (path != null) { directories = Directory.GetDirectories(path); } else { directories = Directory.GetLogicalDrives(); } } catch { UpdateFileBrower(folderBrowser.Tag as string); return; } var items = new FolderBrowserItem[directories.Length + (path != null ? 1 : 0)]; for (int i = 0; i < directories.Length; i++) { items[i + (path != null ? 1 : 0)] = new FolderBrowserItem(directories[i], path == null); } if (path != null) { items[0] = new FolderBrowserItem("..", true); } folderBrowser.ItemsSource = items; folderBrowser.Tag = path; customDestinationTextBox.Text = path; } catch (UnauthorizedAccessException) { MessageBox.Show("Access is denied."); } }
private void UpdateFileBrower(string path) { try { string[] directories; try { if (path != null) directories = Directory.GetDirectories(path); else directories = Directory.GetLogicalDrives(); } catch { UpdateFileBrower(folderBrowser.Tag as string); return; } var items = new FolderBrowserItem[directories.Length + (path != null ? 1 : 0)]; for (int i = 0; i < directories.Length; i++) items[i + (path != null ? 1 : 0)] = new FolderBrowserItem(directories[i], path == null); if (path != null) items[0] = new FolderBrowserItem("..", true); folderBrowser.ItemsSource = items; folderBrowser.Tag = path; customDestinationTextBox.Text = path; } catch (UnauthorizedAccessException) { MessageBox.Show("Access is denied."); } }