private void FileSystemObjectInfo_PropertyChanged(object sender, PropertyChangedEventArgs e) { if (FileSystemInfo is DirectoryInfo) { if (string.Equals(e.PropertyName, "IsExpanded", StringComparison.CurrentCultureIgnoreCase)) { RaiseBeforeExpand(); if (IsExpanded) { ImageSource = FolderManager.GetImageSource(FileSystemInfo.FullName, ItemState.Open); if (HasDummy()) { RaiseBeforeExplore(); RemoveDummy(); ExploreDirectories(); //ExploreFiles(); //Permet d'afficher les fichiers RaiseAfterExplore(); } } else { ImageSource = FolderManager.GetImageSource(FileSystemInfo.FullName, ItemState.Close); } RaiseAfterExpand(); } } }
public FileSystemObjectInfo(FileSystemInfo info) { if (this is DummyFileSystemObjectInfo) { return; } Children = new ObservableCollection<FileSystemObjectInfo>(); FileSystemInfo = info; if (info is DirectoryInfo) { ImageSource = FolderManager.GetImageSource(info.FullName, ItemState.Close); AddDummy(); } else if (info is FileInfo) { ImageSource = FileManager.GetImageSource(info.FullName); } PropertyChanged += new PropertyChangedEventHandler(FileSystemObjectInfo_PropertyChanged); }