DynamicField 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示一个数据字段,该字段显示在使用 ASP.NET 动态数据功能的数据绑定控件中。
public ref class DynamicField : System::Web::UI::WebControls::DataControlField, System::Web::DynamicData::IFieldFormattingOptions, System::Web::UI::IAttributeAccessor
public class DynamicField : System.Web.UI.WebControls.DataControlField, System.Web.DynamicData.IFieldFormattingOptions, System.Web.UI.IAttributeAccessor
type DynamicField = class
inherit DataControlField
interface IAttributeAccessor
interface IFieldFormattingOptions
Public Class DynamicField
Inherits DataControlField
Implements IAttributeAccessor, IFieldFormattingOptions
- 继承
- 实现
示例
请参阅此功能的运行时代码示例: 运行。
以下示例演示如何使用 DynamicField 控件中的 GridView 对象显示和编辑数据库表中的值。
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void Page_Init(object sender, EventArgs e)
{
DynamicDataManager1.RegisterControl(CustomersGridView);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>DynamicField Sample</title>
<link href="~/Site.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<div>
<h2><%= CustomersDataSource.TableName%> Table</h2>
<asp:DynamicDataManager ID="DynamicDataManager1" runat="server"
AutoLoadForeignKeys="true" />
<asp:ValidationSummary ID="ValidationSummary1" runat="server" EnableClientScript="true"
HeaderText="List of validation errors" />
<asp:DynamicValidator runat="server" ID="DynamicValidator1"
ControlToValidate="CustomersGridView" Display="None" />
<asp:GridView ID="CustomersGridView" runat="server"
AutoGenerateColumns="false"
AutoGenerateEditButton="true"
AutoGenerateDeleteButton="true"
DataSourceID="CustomersDataSource"
AllowPaging="true"
AllowSorting="true"
CssClass="gridview">
<Columns>
<asp:DynamicField DataField="CustomerID" />
<asp:DynamicField DataField="FirstName" />
<asp:DynamicField DataField="LastName" />
</Columns>
</asp:GridView>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the AdventureWorksLT sample database. -->
<asp:LinqDataSource ID="CustomersDataSource" runat="server"
TableName="Customers"
ContextTypeName="AdventureWorksLTDataContext"
EnableUpdate="true"
EnableDelete="true" >
</asp:LinqDataSource>
</div>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs)
DynamicDataManager1.RegisterControl(CustomersGridView)
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>DynamicField Sample</title>
<link href="~/Site.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<div>
<h2><%= CustomersDataSource.TableName%> Table</h2>
<asp:DynamicDataManager ID="DynamicDataManager1" runat="server"
AutoLoadForeignKeys="true" />
<asp:ValidationSummary ID="ValidationSummary1" runat="server" EnableClientScript="true"
HeaderText="List of validation errors" />
<asp:DynamicValidator runat="server" ID="DynamicValidator1"
ControlToValidate="CustomersGridView" Display="None" />
<asp:GridView ID="CustomersGridView" runat="server"
AutoGenerateColumns="false"
AutoGenerateEditButton="true"
AutoGenerateDeleteButton="true"
DataSourceID="CustomersDataSource"
AllowPaging="true"
AllowSorting="true"
CssClass="gridview">
<Columns>
<asp:DynamicField DataField="CustomerID" />
<asp:DynamicField DataField="FirstName" />
<asp:DynamicField DataField="LastName" />
</Columns>
</asp:GridView>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the AdventureWorksLT sample database. -->
<asp:LinqDataSource ID="CustomersDataSource" runat="server"
TableName="Customers"
ContextTypeName="AdventureWorksLTDataContext"
EnableUpdate="true"
EnableDelete="true" >
</asp:LinqDataSource>
</div>
</form>
</body>
</html>
注解
本主题内容:
介绍
此类DynamicField由数据绑定控件(如GridView和DetailsView控件)使用,以显示在自定义页面中使用 ASP.NET 动态数据功能的字段值。
该 DynamicField 类提供类似于 BoundField 类的功能。 但是,由于 DynamicField 对象在动态数据应用程序中使用,因此可以利用以下动态数据功能:
使用基于数据类型的字段模板自动呈现字段的正确控件。 可以全局修改整个应用程序的字段模板。
基于数据库架构提供内置数据验证。 还可以通过自定义数据模型来添加验证类型。
通过使用数据模型中的属性或使用 UIHint 属性自定义各个字段的数据呈现。
该 DynamicField 对象使用 DynamicControl
控件呈现每个字段。 若要指定要在对象中显示的 DynamicField 数据字段,请将 DataField 属性设置为字段名称。 可以通过设置 DataFormatString 属性将自定义格式字符串应用于字段值。 默认情况下,仅当数据绑定控件处于只读模式时,格式字符串才会应用于字段值。 若要将格式字符串应用于数据绑定控件处于编辑模式时显示的值,请将 ApplyFormatInEditMode 属性设置为 true
。 如果字段值为 null
,可以通过设置 NullDisplayText 属性来显示自定义标题。 该DynamicField对象还可以通过将属性true
设置为 ConvertEmptyStringToNull null 值自动将空字符串 (“”) 字段值转换为 null 值。
声明性语法
<asp:DynamicField
AccessibleHeaderText="string"
ApplyFormatInEditMode="true|false"
ControlStyle-BackColor="color name|#dddddd"
ControlStyle-BorderColor="color name|#dddddd"
ControlStyle-BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|
Ridge|Inset|Outset"
ControlStyle-BorderWidth="size"
ControlStyle-CssClass="string"
ControlStyle-Font-Bold="true|false"
ControlStyle-Font-Italic="true|false"
ControlStyle-Font-Names="string"
ControlStyle-Font-Overline="true|false"
ControlStyle-Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
Large|X-Large|XX-Large"
ControlStyle-Font-Strikeout="true|false"
ControlStyle-Font-Underline="true|false"
ControlStyle-ForeColor="color name|#dddddd"
ControlStyle-Height="size"
ControlStyle-Width="size"
ConvertEmptyStringToNull="true|false"
DataField="string"
DataFormatString="string"
FooterStyle-BackColor="color name|#dddddd"
FooterStyle-BorderColor="color name|#dddddd"
FooterStyle-BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|
Ridge|Inset|Outset"
FooterStyle-BorderWidth="size"
FooterStyle-CssClass="string"
FooterStyle-Font-Bold="true|false"
FooterStyle-Font-Italic="true|false"
FooterStyle-Font-Names="string"
FooterStyle-Font-Overline="true|false"
FooterStyle-Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
Large|X-Large|XX-Large"
FooterStyle-Font-Strikeout="true|false"
FooterStyle-Font-Underline="true|false"
FooterStyle-ForeColor="color name|#dddddd"
FooterStyle-Height="size"
FooterStyle-Width="size"
FooterStyle-HorizontalAlign="Center|Justify|Left|NotSet|Right"
FooterStyle-VerticalAlign="Bottom|Middle|NotSet|Top"
FooterStyle-Wrap="true|false"
HeaderImageUrl="uri"
HeaderStyle-BackColor="color name|#dddddd"
HeaderStyle-BorderColor="color name|#dddddd"
HeaderStyle-BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|
Ridge|Inset|Outset"
HeaderStyle-BorderWidth="size"
HeaderStyle-CssClass="string"
HeaderStyle-Font-Bold="true|false"
HeaderStyle-Font-Italic="true|false"
HeaderStyle-Font-Names="string"
HeaderStyle-Font-Overline="true|false"
HeaderStyle-Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
Large|X-Large|XX-Large"
HeaderStyle-Font-Strikeout="true|false"
HeaderStyle-Font-Underline="true|false"
HeaderStyle-ForeColor="color name|#dddddd"
HeaderStyle-Height="size"
HeaderStyle-Width="size"
HeaderStyle-HorizontalAlign="Center|Justify|Left|NotSet|Right"
HeaderStyle-VerticalAlign="Bottom|Middle|NotSet|Top"
HeaderStyle-Wrap="true|false"
HeaderText="string"
InsertVisible="true|false"
ItemStyle-BackColor="color name|#dddddd"
ItemStyle-BorderColor="color name|#dddddd"
ItemStyle-BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|
Ridge|Inset|Outset"
ItemStyle-BorderWidth="size"
ItemStyle-CssClass="string"
ItemStyle-Font-Bold="true|false"
ItemStyle-Font-Italic="true|false"
ItemStyle-Font-Names="string"
ItemStyle-Font-Overline="true|false"
ItemStyle-Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
Large|X-Large|XX-Large"
ItemStyle-Font-Strikeout="true|false"
ItemStyle-Font-Underline="true|false"
ItemStyle-ForeColor="color name|#dddddd"
ItemStyle-Height="size"
ItemStyle-Width="size"
ItemStyle-HorizontalAlign="Center|Justify|Left|NotSet|Right"
ItemStyle-VerticalAlign="Bottom|Middle|NotSet|Top"
ItemStyle-Wrap="true|false"
NullDisplayText="string"
ReadOnly="true|false"
ShowHeader="true|false"
SortExpression="string"
UIHint="string"
ValidationGroup="string"
Visible="true|false"
/>
<asp:DynamicField />
构造函数
DynamicField() |
初始化 DynamicField 类的新实例。 |
属性
AccessibleHeaderText |
获取或设置某些控件中呈现为 |
ApplyFormatInEditMode |
获取或设置一个值,该值指示当数据字段处于编辑模式时,是否将 DataFormatString 属性指定的带格式的字符串应用于字段值。 |
Column |
获取与此 MetaColumn 对象关联的 DynamicField 对象。 |
Control |
获取对数据控件的引用,该控件与 DataControlField 对象关联。 (继承自 DataControlField) |
ControlStyle |
获取 DataControlField 对象所包含的任何 Web 服务器控件的样式。 (继承自 DataControlField) |
ConvertEmptyStringToNull |
获取或设置一个值,该值指示在数据源中更新数据字段时是否将空字符串值 ("") 自动转换为 null 值。 |
DataField |
获取或设置要将 DynamicField 对象绑定到的数据字段的名称。 |
DataFormatString |
获取或设置为数据字段的值指定显示格式的字符串。 |
DesignMode |
获取一个值,该值指示数据控件字段当前是否在设计时环境中进行查看。 (继承自 DataControlField) |
FooterStyle |
获取或设置数据控件字段脚注的样式。 (继承自 DataControlField) |
FooterText |
获取或设置数据控件字段的脚注项中显示的文本。 (继承自 DataControlField) |
HeaderImageUrl |
获取或设置数据控件字段的标题项中显示的图像的 URL。 (继承自 DataControlField) |
HeaderStyle |
获取或设置数据控件字段标头的样式。 (继承自 DataControlField) |
HeaderText |
获取或设置在包含 DynamicField 对象的数据绑定控件的标题中显示的文本。 |
HtmlEncode |
获取或设置一个值,该值指示在 DynamicField 对象中显示数据字段值之前,这些数据字段值是否经过 HTML 编码。 |
InsertVisible |
获取一个值,该值指示 DataControlField 对象在其父级数据绑定控件处于插入模式时是否可见。 (继承自 DataControlField) |
IsTrackingViewState |
获取一个值,该值指示 DataControlField 对象是否保存对其视图状态的更改。 (继承自 DataControlField) |
ItemStyle |
获取由数据控件字段显示的任何基于文本的内容的样式。 (继承自 DataControlField) |
NullDisplayText |
获取或设置当字段值为 |
ReadOnly |
获取动态字段的只读状态。 |
ShowHeader |
获取或设置一个值,该值指示是否呈现数据控件字段的标题项。 (继承自 DataControlField) |
SortExpression |
获取或设置当数据字段用于排序数据源时所使用的排序表达式。 |
UIHint |
获取或设置用于显示数据字段的字段模板。 |
ValidateRequestMode |
获取或设置一个值,该值指定该控件是否验证客户端输入。 |
ValidateRequestMode |
获取或设置一个值,该值指定该控件是否验证客户端输入。 (继承自 DataControlField) |
ValidationGroup |
获取与此 ValidationGroup 对象关联的 DynamicField 对象。 |
ViewState |
获取状态信息的字典,这些信息使您可以在同一页的多个请求间保存和还原 DataControlField 对象的视图状态。 (继承自 DataControlField) |
Visible |
获取或设置指示是否呈现数据控件字段的值。 (继承自 DataControlField) |
方法
显式接口实现
IDataSourceViewSchemaAccessor.DataSourceViewSchema |
获取或设置与此 DataControlField 对象关联的架构。 (继承自 DataControlField) |
IStateManager.IsTrackingViewState |
获取一个值,该值指示 DataControlField 对象是否保存对其视图状态的更改。 (继承自 DataControlField) |
IStateManager.LoadViewState(Object) |
将数据控件字段还原为保存过的前一视图状态。 (继承自 DataControlField) |
IStateManager.SaveViewState() |
保存在页回发到服务器后对 DataControlField 视图状态所做的更改。 (继承自 DataControlField) |
IStateManager.TrackViewState() |
使 DataControlField 对象跟踪对其视图状态所做的更改,以便这些更改可以存储在控件的 ViewState 属性中并且能够在同一页的不同请求间得以保持。 (继承自 DataControlField) |
扩展方法
ConvertEditedValue(IFieldFormattingOptions, String) |
返回用户为正在验证的控件提供的值。 |
FormatEditValue(IFieldFormattingOptions, Object) |
使用指定格式设置选项设置指定字段值的格式。 |
FormatValue(IFieldFormattingOptions, Object) |
使用指定格式设置选项设置指定字段值的格式。 |