public void AddFileCmd() { EditableItem.Value = ViewerSettings.Language.Translate["FileName"]; string[] drives = Environment.GetLogicalDrives(); TreeViewVideoFile.ChildNodes.Clear(); TreeViewVideoFile.CheckedNodes.Clear(); TreeViewVideoFile.CheckedNode = null; string VideoFilesFilter = "*.wtv;*.dvr-ms;*.asf;*.avi;*.divx;*.dv;*.flv;*.gxf;*.m1v;*.m2v;*.m2ts;*.m4v;*.mkv;*.mov;*.mp2;*.mp4;*.mpeg;*.mpeg1;*.mpeg2;*.mpeg4;*.mpg;*.mts;*.mxf;*.ogm;*.ts;*.vob;*.wmv;*.tp"; foreach (string curdrive in drives) { FileTreeNode nodefile = new FileTreeNode(curdrive, curdrive, VideoFilesFilter, TreeViewVideoFile); nodefile.Selectable = false; TreeViewVideoFile.ChildNodes.Add(nodefile); } Dictionary <string, object> properties = new Dictionary <string, object>(); properties["BuddyViewer"] = this; if (session != null) { session.GoToPage("resx://MceBuddyViewer/MceBuddyViewer.Resources/SelectVideoFile", properties); } else { Debug.WriteLine("GoToMenu"); } }
public override void GetChildNodes() { if (!String.IsNullOrEmpty(FullPath)) { ChildNodes.Clear(); string[] directories = Directory.GetDirectories(FullPath); string[] files = FileTreeNode.GetFiles(FullPath, Filter); foreach (string directory in directories) { try { string folder = Path.Combine(FullPath, directory); DirectoryInfo info = new DirectoryInfo(folder); if ((info.Attributes & FileAttributes.Hidden) != FileAttributes.Hidden) { FileTreeNode node = new FileTreeNode(Path.GetFileName(directory), directory, Filter, TreeView); node.Level = Level + 1; node.TreeView = TreeView; node.Selectable = false; TreeView.CheckedNodeChanged += new EventHandler <TreeNodeEventArgs>(TreeView_OnCheckedNodeChanged); node.HasChildNodes = ((Directory.GetDirectories(node.FullPath).Length > 0) || (FileTreeNode.GetFiles(node.FullPath, Filter).Length > 0)); ChildNodes.Add(node); } } catch (UnauthorizedAccessException ex) { Debug.WriteLine(ex); } catch (DriveNotFoundException ex) { Debug.WriteLine(ex); } catch (IOException ex) { Debug.WriteLine(ex); } } foreach (string thefile in files) { try { string hfile = Path.Combine(FullPath, thefile); FileInfo info = new FileInfo(hfile); if ((info.Attributes & FileAttributes.Hidden) != FileAttributes.Hidden) { FileTreeNode node = new FileTreeNode(Path.GetFileName(thefile), thefile, Filter, TreeView); node.Level = Level + 1; node.TreeView = TreeView; node.NodeColor = new Color(Colors.YellowGreen); TreeView.CheckedNodeChanged += new EventHandler <TreeNodeEventArgs>(TreeView_OnCheckedNodeChanged); node.HasChildNodes = false; ChildNodes.Add(node); } } catch (UnauthorizedAccessException ex) { Debug.WriteLine(ex); } catch (DriveNotFoundException ex) { Debug.WriteLine(ex); } catch (IOException ex) { Debug.WriteLine(ex); } } HasChildNodes = (ChildNodes.Count > 0); } base.GetChildNodes(); }