internal static string GetActiveProjectDirectory() { var project = VsHelper.GetActiveProject(); var path = project != null?Path.GetDirectoryName(project.FullName) : string.Empty; return(path); }
public override void Apply() { base.Apply(); foreach (var prop in _properties.Values) { prop.Setter(); } var path = VsHelper.GetActiveProjectDirectory(); configManager.SetProjectConfiguration(path, config); }
public TemplatePropertyPageControl() { InitializeComponent(); var props = new UserPropertyDescriptor[] { new UserPropertyDescriptor( "PnPProvisionSiteUrl", typeof(string), 50001, textProvisionSiteUrl, () => { config.ProvisionSiteUrl = textProvisionSiteUrl.Text; }, () => { return(config.ProvisionSiteUrl); }, () => { return(config.ProvisionSiteUrl != textProvisionSiteUrl.Text); }), new UserPropertyDescriptor( "PnPTemplateAuthor", typeof(string), 50002, textAuthor, () => { config.Author = textAuthor.Text; }, () => { return(config.Author); }, () => { return(config.Author != textAuthor.Text); }), }; var controls = new List <PropertyControlData>(); foreach (var prop in props) { _properties[prop.Name] = prop; controls.Add(new PropertyControlData(prop.DispId, prop.Name, prop.FormControl, ControlDataFlags.UserPersisted)); } _controlData = controls.ToArray(); configManager = new ConfigurationManager(); var path = VsHelper.GetActiveProjectDirectory(); config = configManager.GetProjectConfiguration(path); }