public PackageUploadViewModel() { HandlerAssemblies = new ObservableCollection <string>(); Dependencies = new ObservableCollection <string>(); AddHandlerAssemblies = new RelayCommand(o => BrowserDialogs.BrowseForDll(null, true, s => { if (String.IsNullOrWhiteSpace(PackageName) && s.Length > 0) { PackageName = Path.GetFileNameWithoutExtension(s[0]); } s.ToList().ForEach(x => AddHandlerAssemblyFile(x)); })); AddDependency = new RelayCommand(o => { BrowserDialogs.BrowseForAnyFile(null, true, s => s.ToList().ForEach(x => AddDependencyFile(x))); }); RemoveHandlerAssemblies = new TypedRelayCommand <int>(o => HandlerAssemblies.RemoveAt(o), o => o >= 0); RemoveDependency = new TypedRelayCommand <int>(o => Dependencies.RemoveAt(o), o => o >= 0); }