private async void ButtonNewFolder_Click(object sender, RoutedEventArgs e) { TreeSmartItem sItem = TreeViewFolders.SelectedItem as TreeSmartItem; if ((sItem == null) || sItem.HasError) { return; } NewFolderWindow NFW = new NewFolderWindow(this, false); if (!(bool)NFW.ShowDialog() || NFW.newFolder.NullEmpty()) { return; } //item.Expanded = true; TreeSmartItem item; if (sItem.Parent != null) { item = sItem.Parent; } else { item = sItem; } if (item.HasDummy) { item.Items.Clear(); item.HasDummy = false; } string path = item.FullName; PathHelper.AddEndningSlash(ref path); TreeSmartItem folder = new TreeSmartItem(NFW.newFolder, path); item.Items.Add(folder); folder.OptColor = SolidColors.DarkGreen; folder.Operation = AppLanguage.Get("LangOperationCreating"); if (await ClientHelper.NewFolder(NFW.newFolder, path)) { folder.Selected = true; folder.OptColor = SolidColors.SolidBlue; folder.Operation = AppLanguage.Get("LangOperationCreated"); } else { folder.Items.Clear(); folder.HasError = true; folder.OptColor = SolidColors.DarkRed; folder.Operation = AppLanguage.Get("LangOperationCreateError"); folder.Items.Add(new TreeSmartItem(AppLanguage.Get("LangTextNoFoldersInside"), dummyIcon)); } }
private async void Window_Loaded(object sender, RoutedEventArgs e) { TreeSmartItem item = new TreeSmartItem(ClientHelper.Home, string.Empty); item.Selected = true; item.Expanded = true; await addFolders(item, item.FullName); TreeViewFolders.Items.Add(item); }
private async void TreeViewItemFolder_Expanded(object sender, RoutedEventArgs e) { TreeViewItem treeItem = e.OriginalSource as TreeViewItem; if (treeItem == null) { return; } TreeSmartItem item = treeItem.Header as TreeSmartItem; if ((item == null) || item.HasError) { return; } await addFolders(item, item.FullName); }
private void TreeViewItemFolder_Collapsed(object sender, RoutedEventArgs e) { TreeViewItem treeItem = e.OriginalSource as TreeViewItem; if (treeItem == null) { return; } TreeSmartItem item = treeItem.Header as TreeSmartItem; if ((item == null) || item.HasError) { return; } item.Items.Clear(); item.Items.Add(new TreeSmartItem(AppLanguage.Get("LangTextLoading"), dummyIcon)); }
private void ButtonSelect_Click(object sender, RoutedEventArgs e) { TreeSmartItem sItem = TreeViewFolders.SelectedItem as TreeSmartItem; if ((sItem == null) || sItem.HasError) { return; } TreeSmartItem item; if (sItem.Parent != null) { item = sItem.Parent; } else { item = sItem; } string toPath = item.FullName; PathHelper.AddEndningSlash(ref toPath); if (MessageWindow.Show(this, AppLanguage.Get("LangMBMove").FormatC(System.Environment.NewLine + toPath), AppLanguage.Get("LangMBMoveTitle"), MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.Yes) != MessageBoxResult.Yes) { return; } ClientHelper.MoveAsync(selectedItems, toPath); this.Close(); }
private async Task addFolders(TreeSmartItem pItem, string path) { TreeViewFolders.IsEnabled = false; SmartItem[] folders = await ClientHelper.Client.GetServerFoldersAsync(path); pItem.Items.Clear(); if (folders == null) { TreeSmartItem item = new TreeSmartItem(AppLanguage.Get("LangTextError"), dummyIcon); item.Parent = pItem; pItem.Items.Add(item); pItem.HasDummy = true; } else if (folders.Length > 0) { TreeSmartItem[] items = new TreeSmartItem[folders.Length]; for (int i = 0; i < folders.Length; i++) { items[i] = new TreeSmartItem(folders[i].ItemName, folders[i].ItemFolder); } pItem.Items = new ObservableCollection <TreeSmartItem>(items); } else { TreeSmartItem item = new TreeSmartItem(AppLanguage.Get("LangTextNoFoldersInside"), dummyIcon); item.Parent = pItem; pItem.Items.Add(item); pItem.HasDummy = true; } TreeViewFolders.IsEnabled = true; }