protected void Application_Start(object sender, EventArgs e)
{
SystemManager.ApplicationStart += SystemManager_ApplicationStart;
}
void SystemManager_ApplicationStart(object sender, EventArgs e)
{
ControlTemplates.RegisterTemplatableControl(typeof(CustomDownloadListWidget), typeof(object));
RegisterTemplate();
}
public void RegisterTemplate()
{
var initializer = SiteInitializer.GetInitializer();
var manager = initializer.PageManager;
var existingTemplate = manager.GetPresentationItems<ControlPresentation>().Where(p =>
p.EmbeddedTemplateName == "SitefinityWebApp.CustomControls.CustomDownloadListWidget.ascx" &&
p.ControlType == typeof(CustomDownloadListWidget).FullName &&
p.Name == "CustomWidgetTemplate"
)
.SingleOrDefault();
if (existingTemplate == null)
{
initializer.RegisterControlTemplate(
"SitefinityWebApp.CustomControls.CustomDownloadListWidget.ascx",
typeof(CustomDownloadListWidget).FullName,
"CustomWidgetTemplate",
null,
"Documents & Files",
"ASP_NET_TEMPLATE",
typeof(CustomDownloadListWidget).Assembly.FullName,
"Documents - list"
);
initializer.SaveChanges();
}
}