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 是由 和 DetailsView 控制項等 GridView 資料繫結控制項使用,以顯示在自訂頁面中使用 ASP.NET 動態資料功能的域值。
類別 DynamicField 提供類似 BoundField 類別的功能。 不過,由於 DynamicField 物件用於動態資料應用程式中,因此您可以利用下列動態資料功能:
根據資料類型,使用欄位範本自動轉譯欄位的適當控制項。 欄位範本可以全域修改整個應用程式。
根據資料庫架構提供內建資料驗證。 您也可以自訂資料模型來新增驗證類型。
使用資料模型中的屬性或使用 UIHint 屬性來自訂個別欄位的資料轉譯。
物件會 DynamicField 使用 控制項轉譯 DynamicControl
每個欄位。 若要指定要顯示在 物件中的資料 DynamicField 欄位,請將 DataField 屬性設定為功能變數名稱。 您可以藉由設定 DataFormatString 屬性,將自訂格式字串套用至域值。 根據預設,只有在資料繫結控制項處於唯讀模式時,才會將格式化字串套用至域值。 若要將格式化字串套用至資料繫結控制項處於編輯模式時所顯示的值,請將 ApplyFormatInEditMode 屬性設定為 true
。 如果域值為 null
,您可以藉由設定 NullDisplayText 屬性來顯示自訂標題。 物件 DynamicField 也可以藉由將 屬性 true
設定 ConvertEmptyStringToNull 為 ,自動將空字串 (「」「) 域值轉換成 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) |
以指定的格式化選項來進行格式化指定的欄位值。 |