EPR类企业管理系统

在我们现有系统基础上或全新开发,提供定制服务
为您的企业高效快速实施ERP,WMS,MES,CRM管理系统
全面管控物料仓库、销售业务、采购业务、仓库业务
生产过程、质量检验、组织架构、业务报表


定制
QQ:460-3528

开发
QQ群:3360-90194

源码
微信:136-3650-3721

如何:自定义ASP.NET模板

默认情况下,ASP.NET应用程序的模板内容由嵌入到DevExpress.ExpressApp.Web中的用户控件提供,因此无法进行修改。但是,您可以将模板内容源文件包括到您的应用程序项目中,修改此内容并改为使用它。本示例演示如何修改DefaultVerticalTemplateContentNew模板内容。

提示

DevExpress代码示例数据库(http://www.devexpress.com/example=E4359)中提供了完整的示例项目。

添加可编辑模板

打开现有的XAF解决方案或创建一个新的XAF解决方案。调用ASP.NET应用程序项目的模板库,选择XAF ASP.NET模板|。默认垂直模板内容项目项目,并指定一个名称(例如,“ MyDefaultVerticalTemplateContent”)。

TemplateGalery_Web

注意

如果使用经典Web UI,请选择“不推荐使用的模板” | “不适用”。默认的垂直模板内容项,而不是XAF ASP.NET模板| 默认垂直模板内容。)

重点

始终将自定义模板添加到ASP.NET应用程序项目的根文件夹中。否则,可能会错误生成图像URL。

将添加以下实现用户控件的文件。

  • MyDefaultVerticalTemplateContent.ascx
  • MyDefaultVerticalTemplateContent.ascx.cs
  • MyDefaultVerticalTemplateContent.ascx.designer.cs

在下面的图像中选择了这些文件,该图像是从“解决方案资源管理器”窗口中获取的。

Templates_CustomizeWebTemplates_UserControlFiles

打开ASCX文件。在这里,您可以修改内容标记。例如,您可以更改“更新面板”样式-将其“ 4a4a4a”颜色替换为“ 2c86d3”。

Templates_CustomizeWebTemplates

使用修改后的模板代替默认模板

要使用修改后的内容而不是默认内容,请打开Global.asax.csGlobal.asax.vb)文件并修改Session_Start事件处理程序。指定自定义用户控件的路径,如下所示。

protected void Session_Start(Object sender, EventArgs e) {
    // ...
    WebApplication.Instance.Settings.DefaultVerticalTemplateContentPath =
        "MyDefaultVerticalTemplateContent.ascx";
    WebApplication.Instance.SwitchToNewStyle();
    WebApplication.Instance.Setup();
    WebApplication.Instance.Start();
}

下图说明了正在运行的应用程序中修改后的View标题样式。

Templates_CustomizeWebTemplates_Result

注意

如果要覆盖默认模板脚本,请处理WebWindow.CustomRegisterTemplateDependentScripts事件。

将动作容器添加到模板

在新的Web UI中,无法显示导航历史记录(面包屑)的NavigationHistoryActionContainer。但是,您可以使用以下标记将其轻松添加到自定义ASP.NET模板中。

<xaf:XafUpdatePanel ID="XafUpdatePanel3" runat="server">
    <xaf:NavigationHistoryActionContainer runat="server" 
        ContainerId="ViewsHistoryNavigation" 
        id ="NavigationHistoryActionContainer" 
        Delimiter=" / " />
</xaf:XafUpdatePanel>

操作容器应放在XafUpdatePanel控件内。结果如下所示。

Templates_CustomizeWebTemplates_BreadCrumbs

您可以使用相同的方法将任何其他内置或自定义操作容器添加到模板中的所需位置。请注意,您的自定义操作容器实例应添加到模板的IFrameTemplate.GetContainers方法返回的列表中。

相关文章

转载保留此链接,注明出处