diff --git a/src/AddIns/Misc/PackageManagement/Project/PackageManagement.csproj b/src/AddIns/Misc/PackageManagement/Project/PackageManagement.csproj index 3c5ac1edbc..eb4d742ff7 100644 --- a/src/AddIns/Misc/PackageManagement/Project/PackageManagement.csproj +++ b/src/AddIns/Misc/PackageManagement/Project/PackageManagement.csproj @@ -226,6 +226,10 @@ + + RegisteredPackageSourcesUserControl.xaml + Code + RegisteredPackageSourcesView.xaml Code @@ -337,6 +341,7 @@ + diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementViewModels.cs b/src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementViewModels.cs index 7418e614a4..8327ead92e 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementViewModels.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementViewModels.cs @@ -4,6 +4,7 @@ using System; using ICSharpCode.PackageManagement.Design; using ICSharpCode.PackageManagement.Scripting; +using NuGet; namespace ICSharpCode.PackageManagement { @@ -69,8 +70,7 @@ namespace ICSharpCode.PackageManagement public RegisteredPackageSourcesViewModel RegisteredPackageSourcesViewModel { get { if (registeredPackageSourcesViewModel == null) { - RegisteredPackageSources packageSources = - PackageManagementServices.Options.PackageSources; + RegisteredPackageSources packageSources = GetRegisteredPackageSources(); registeredPackageSourcesViewModel = CreateRegisteredPackageSourcesViewModel(packageSources); } @@ -78,6 +78,20 @@ namespace ICSharpCode.PackageManagement } } + RegisteredPackageSources GetRegisteredPackageSources() + { + if (IsInDesignMode()) { + return CreateDesignTimeRegisteredPackageSources(); + } else { + return PackageManagementServices.Options.PackageSources; + } + } + + RegisteredPackageSources CreateDesignTimeRegisteredPackageSources() + { + return new RegisteredPackageSources(new PackageSource[0]); + } + RegisteredPackageSourcesViewModel CreateRegisteredPackageSourcesViewModel(RegisteredPackageSources packageSources) { CreateRegisteredPackageRepositories(); @@ -91,8 +105,7 @@ namespace ICSharpCode.PackageManagement public RegisteredPackageSourcesViewModel RegisteredProjectTemplatePackageSourcesViewModel { get { if (registeredProjectTemplatePackageSourcesViewModel == null) { - RegisteredPackageSources packageSources = - PackageManagementServices.ProjectTemplatePackageSources; + RegisteredPackageSources packageSources = GetProjectTemplatePackageSources(); registeredProjectTemplatePackageSourcesViewModel = CreateRegisteredPackageSourcesViewModel(packageSources); } @@ -100,6 +113,15 @@ namespace ICSharpCode.PackageManagement } } + RegisteredPackageSources GetProjectTemplatePackageSources() + { + if (IsInDesignMode()) { + return CreateDesignTimeRegisteredPackageSources(); + } else { + return PackageManagementServices.ProjectTemplatePackageSources; + } + } + public PackageManagementOptionsViewModel PackageManagementOptionsViewModel { get { if (packageManagementOptionsViewModel == null) { diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/RegisteredPackageSourcesUserControl.xaml b/src/AddIns/Misc/PackageManagement/Project/Src/RegisteredPackageSourcesUserControl.xaml new file mode 100644 index 0000000000..69b2c00ec4 --- /dev/null +++ b/src/AddIns/Misc/PackageManagement/Project/Src/RegisteredPackageSourcesUserControl.xaml @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +