如何:自定义 ASP.NET 动态数据默认的字段模板

更新:2007 年 11 月

您可以通过修改默认字段模板的属性来自定义其显示、编辑和插入数据的方式。

有关默认字段模板的更多信息,请参见 ASP.NET 动态数据默认字段模板

Cc488533.alert_note(zh-cn,VS.90).gif说明:

对默认字段模板所做的更改将适用于整个 Web 应用程序中使用该模板的所有页面和控件。

下面的过程演示如何将背景颜色添加到动态数据项目默认提供的一个字段模板 Text_Edit.ascx 中。

自定义默认字段模板

  1. 在 Visual Studio 2008 或 Visual Web Developer 2008 速成版中打开 ASP.NET 动态数据网站。

  2. 在 DynamicData/FieldTemplate 文件夹中,打开要修改的默认字段模板并切换到**“源”**视图。

  3. 修改代码以自定义字段模板。

    例如,可以添加下面的代码段来修改 Text_Edit.ascx 字段模板。

    <asp:TextBox ID="TextBox1" runat="server" BackColor="Yellow" Text='<%# FieldValueEditString %>'></asp:TextBox>
    

    该代码段向标记添加了一个背景颜色属性并将其设置为黄色。已修改的 Text_Edit.ascx 代码将与下面的代码示例类似。

示例

下面的代码示例演示已修改的 Text_Edit.ascx 字段模板。当某个表处于编辑模式时,这个已修改的字段模板将显示 String、Decimal、Double 和 Int32 数据类型文本框的背景颜色更改为黄色。此修改将影响网站上处于编辑模式的所有行:

<%@ Control Language="VB" Inherits="System.Web.DynamicData.FieldTemplateUserControl" %>

<asp:TextBox ID="TextBox1" runat="server" BackColor="Yellow" Text='<%# FieldValueEditString %>'></asp:TextBox>
<asp:RequiredFieldValidator runat="server" ID="RequiredFieldValidator1" ControlToValidate="TextBox1" Display="Dynamic" Enabled="false" />
<asp:RegularExpressionValidator runat="server" ID="RegularExpressionValidator1" ControlToValidate="TextBox1" Display="Dynamic" Enabled="false" />
<asp:DynamicValidator runat="server" ID="DynamicValidator1" ControlToValidate="TextBox1" Display="Dynamic" />
<%@ Control Language="C#" Inherits="System.Web.DynamicData.FieldTemplateUserControl"%>

<asp:TextBox ID="TextBox1" runat="server" BackColor="Yellow" Text='<%# FieldValueEditString %>'></asp:TextBox>
<asp:RequiredFieldValidator runat="server" ID="RequiredFieldValidator1" ControlToValidate="TextBox1" Display="Dynamic" Enabled="false" />
<asp:RegularExpressionValidator runat="server" ID="RegularExpressionValidator1" ControlToValidate="TextBox1" Display="Dynamic" Enabled="false" />
<asp:DynamicValidator runat="server" ID="DynamicValidator1" ControlToValidate="TextBox1" Display="Dynamic" />

编译代码

  • Microsoft Visual Studio 2008 Service Pack 1 或 Visual Web Developer 2008 速成版 Service Pack 1。

  • AdventureWorksLT 示例数据库。有关如何下载和安装 SQL Server 示例数据库的信息,请参见 CodePlex 站点上的 Microsoft SQL Server Product Samples: Database(Microsoft SQL Server 产品示例:数据库)。请确保安装了针对所运行的 SQL Server 版本(Microsoft SQL Server 2005 或 Microsoft SQL Server 2008)的示例数据库正确版本。

  • 动态数据网站。这允许您为数据库创建数据上下文,以及创建包含要自定义的数据字段和要重写的方法的类。此外,它还将创建要在其中使用上述页面的环境。有关更多信息,请参见演练:使用基架创建新的动态数据网站

请参见

任务

如何:在数据模型中自定义数据字段显示

概念

ASP.NET 动态数据默认字段模板