public void UpdateSubItems() { Items.Clear(); foreach (RDAFolder rdaFolder in Enumerable.OrderBy(Folder.Folders, f => f.Name)) { RDAFolderTreeViewItem folderTreeViewItem = new RDAFolderTreeViewItem(); folderTreeViewItem.Folder = rdaFolder; folderTreeViewItem.Header = ControlExtension.BuildImageTextblock("pack://application:,,,/Images/Icons/folder.png", rdaFolder.Name); Items.Add(folderTreeViewItem); if ((TreeViewExtension.GetTreeView(this) as MultiSelectTreeView).SelectedItems.Contains(this)) { (TreeViewExtension.GetTreeView(this) as MultiSelectTreeView).SelectItem(folderTreeViewItem); (TreeViewExtension.GetTreeView(this) as MultiSelectTreeView).UpdateSelectedItems(); } } foreach (RDAFile file in Enumerable.OrderBy(Folder.Files, f => f.FileName)) { RDAFileTreeViewItem fileTreeViewItem = RDAFileExtension.ToTreeViewItem(file); fileTreeViewItem.SelectOnRightClick = true; Items.Add(fileTreeViewItem); if ((TreeViewExtension.GetTreeView(this) as MultiSelectTreeView).SelectedItems.Contains(this)) { (TreeViewExtension.GetTreeView(this) as MultiSelectTreeView).SelectItem(fileTreeViewItem); (TreeViewExtension.GetTreeView(this) as MultiSelectTreeView).UpdateSelectedItems(); } } AlreadyExpanded = true; IsExpanded = true; }
public void UpdateSubItems() { Items.Clear(); foreach (RDAFolder rdaFolder in Enumerable.OrderBy(Folder.Folders, f => f.Name)) { RDAFolderTreeViewItem folderTreeViewItem = new RDAFolderTreeViewItem(); folderTreeViewItem.Folder = rdaFolder; folderTreeViewItem.Header = ControlExtension.BuildImageTextblock("pack://application:,,,/Images/Icons/folder.png", rdaFolder.Name); Items.Add(folderTreeViewItem); if ((TreeViewExtension.GetTreeView(this) as MultiSelectTreeView).SelectedItems.Contains(this)) { (TreeViewExtension.GetTreeView(this) as MultiSelectTreeView).SelectItem(folderTreeViewItem); (TreeViewExtension.GetTreeView(this) as MultiSelectTreeView).UpdateSelectedItems(); } } foreach (RDAFile file in Enumerable.OrderBy(Folder.Files, f => f.FileName)) { RDAFileTreeViewItem fileTreeViewItem = RDAFileExtension.ToTreeViewItem(file); fileTreeViewItem.SelectOnRightClick = true; Items.Add(fileTreeViewItem); if ((TreeViewExtension.GetTreeView(this) as MultiSelectTreeView).SelectedItems.Contains(this)) { (TreeViewExtension.GetTreeView(this) as MultiSelectTreeView).SelectItem(fileTreeViewItem); (TreeViewExtension.GetTreeView(this) as MultiSelectTreeView).UpdateSelectedItems(); } } AlreadyExpanded = true; IsExpanded = true; }
private void context_Delete_Click(object sender, RoutedEventArgs e) { if (Parent is RDAFolderTreeViewItem) { RDAFolderTreeViewItem folderTreeViewItem = Parent as RDAFolderTreeViewItem; folderTreeViewItem.Folder.Files.Remove(File); folderTreeViewItem.UpdateSubItems(); } else { MainWindow.CurrentMainWindow.CurrentReader.rdaFolder.Files.Remove(File); MainWindow.CurrentMainWindow.RebuildTreeView(); } }
public RDAFolderTreeViewItem SearchFolder(string text) { RDAFolderTreeViewItem_Expanded(null, null); if (Folder.Name.Contains(text)) { return(this); } foreach (RDAFolderTreeViewItem folderTreeViewItem1 in Enumerable.OfType <RDAFolderTreeViewItem>(Items)) { RDAFolderTreeViewItem folderTreeViewItem2 = folderTreeViewItem1.SearchFolder(text); if (folderTreeViewItem2 != null) { return(folderTreeViewItem2); } } IsExpanded = false; return(null); }