private void dirChangedHandler(object sender, DirectoryChangedEventArgs args) { if (args is DirectoryChangedEventArgs <FI, DI, FSI> ) { DirectoryChangedEventArgs <FI, DI, FSI> genericArgs = args as DirectoryChangedEventArgs <FI, DI, FSI>; ChangeCurrentBrowserViewModel(genericArgs.Directory); args.ChangeAllowed = true; } else { if (args.DirectoryString.StartsWith("http://")) { ChangeCurrentBrowserViewModel(new Uri(args.DirectoryString)); args.ChangeAllowed = true; } else { args.ChangeAllowed = false; } } if (args.ChangeAllowed) { DirectoryChanged(sender, args); } }
private bool changeDirectory(string parseName) { DirectoryChangedEventArgs args = null; FSI entry = _profile.ConstructEntry(parseName); if (entry is DI) { DirectoryModel <FI, DI, FSI> newDirModel = _profile.ConstructDirectoryModel((DI)entry); args = new DirectoryChangedEventArgs <FI, DI, FSI>(newDirModel); } else { args = new DirectoryChangedEventArgs(parseName); } DirectoryChanged(this, args); return(args.ChangeAllowed); }