public IControlRenderer GetRenderer(string name) { var options = this.OptionsMonitor.Get(name); if (null == options.RendererType) { throw new InvalidOperationException($"A control renderer with name '{name}' not found. Have you forgotten to call AddRenderer<T>(string) on IWebControlsBuilder ?"); } IControlRendererEvents eventClassInstance = null; if (null != options.EventClass) { eventClassInstance = ActivatorUtilities.CreateInstance <IControlRendererEvents>(this.ServiceProvider); } eventClassInstance = eventClassInstance ?? NullControlRendererEvents.Current; return((IControlRenderer)ActivatorUtilities.CreateInstance(this.ServiceProvider, options.RendererType, options, eventClassInstance)); }
public DefaultControlRenderer(IServiceProvider serviceProvider, WebControlsRendererOptions rendererOptions, IControlRendererEvents events, IOptions <WebControlsOptions> optionsAccessor) { this.ServiceProvider = serviceProvider; this.WebControlsOptions = optionsAccessor.Value; this.RendererOptions = rendererOptions; this.Events = events; }
public BootstrapGridRenderer(IServiceProvider serviceProvider, WebControlsRendererOptions rendererOptions, IControlRendererEvents events, IOptions <WebControlsOptions> optionsAccessor) : base(serviceProvider, rendererOptions, events, optionsAccessor) { }