DynamicField Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет поле данных, отображаемое в элементе управления с привязкой к данным, которое использует 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 свойства.
Объект отображает каждое DynamicFieldDynamicControl поле с помощью элемента управления. Чтобы указать поле данных для отображения в объекте DynamicField , задайте DataField для свойства имя поля. Можно применить настраиваемую строку форматирования к значению поля, задав DataFormatString свойство. По умолчанию строка форматирования применяется к значениям полей только в том случае, если элемент управления с привязкой к данным находится в режиме только для чтения. Чтобы применить строку форматирования к значениям, отображаемым в режиме редактирования элемента управления с привязкой к данным, задайте ApplyFormatInEditMode для свойства значение true. Если значение поля имеет значение null, можно отобразить настраиваемую подпись, задав NullDisplayText свойство. Объект DynamicField также может автоматически преобразовывать значения поля пустой строки ("") в значения NULL, задав ConvertEmptyStringToNull для свойства значение true.
Декларативный синтаксис
<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 . (Унаследовано от DataControlField) |
| ConvertEmptyStringToNull |
Возвращает или задает значение, указывающее, автоматически ли пустые строковые значения ("") преобразуются в значения NULL при обновлении поля данных в источнике данных. |
| DataField |
Возвращает или задает имя поля данных для привязки DynamicField объекта к. |
| DataFormatString |
Возвращает или задает строку, указывающую формат отображения для значения поля данных. |
| DesignMode |
Возвращает значение, указывающее, просматривается ли в настоящее время поле управления данными в среде разработки. (Унаследовано от DataControlField) |
| FooterStyle |
Возвращает или задает стиль нижнего колонтитула поля управления данными. (Унаследовано от DataControlField) |
| FooterText |
Возвращает или задает текст, отображаемый в нижнем колонтитуле поля элемента управления данными. (Унаследовано от DataControlField) |
| HeaderImageUrl |
Возвращает или задает URL-адрес изображения, отображаемого в элементе заголовка поля элемента управления данными. (Унаследовано от DataControlField) |
| HeaderStyle |
Возвращает или задает стиль заголовка поля управления данными. (Унаследовано от DataControlField) |
| HeaderText |
Возвращает или задает текст, отображаемый в заголовке элемента управления с привязкой к данным, который содержит DynamicField объект. |
| HtmlEncode |
Возвращает или задает значение, указывающее, кодируются ли значения полей данных HTML перед отображением в объекте DynamicField . |
| InsertVisible |
Возвращает значение, указывающее, отображается ли DataControlField объект, когда его родительский элемент управления с привязкой к данным находится в режиме вставки. (Унаследовано от DataControlField) |
| IsTrackingViewState |
Возвращает значение, указывающее, сохраняет ли DataControlField объект изменения в состоянии представления. (Унаследовано от DataControlField) |
| ItemStyle |
Возвращает стиль любого текстового содержимого, отображаемого полем управления данными. (Унаследовано от DataControlField) |
| NullDisplayText |
Возвращает или задает заголовок, отображаемый для поля данных при значении |
| ReadOnly |
Возвращает состояние динамического поля только для чтения. |
| ShowHeader |
Возвращает или задает значение, указывающее, отображается ли элемент заголовка поля управления данными. (Унаследовано от DataControlField) |
| SortExpression |
Возвращает или задает выражение сортировки, используемое при использовании поля данных для сортировки источника данных по. |
| UIHint |
Возвращает или задает шаблон поля, используемый для отображения поля данных. |
| ValidateRequestMode |
Возвращает или задает значение, указывающее, проверяет ли элемент управления входные данные клиента. |
| ValidationGroup |
ValidationGroup Возвращает объект, с которым связан этот DynamicField объект. |
| ViewState |
Получает словарь сведений о состоянии, позволяющий сохранять и восстанавливать состояние DataControlField представления объекта в нескольких запросах на одну и ту же страницу. (Унаследовано от DataControlField) |
| Visible |
Возвращает или задает значение, указывающее, отображается ли поле элемента управления данными. (Унаследовано от DataControlField) |
Методы
| Имя | Описание |
|---|---|
| CloneField() |
Создает дубликат копии текущего DataControlFieldпроизводного объекта. (Унаследовано от DataControlField) |
| ConfigureDynamicControl(DynamicControl) |
Предоставляет механизм изменения DynamicControl объекта, созданного InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32) методом. |
| CopyProperties(DataControlField) |
Копирует свойства текущего DynamicField объекта в указанный DataControlField объект. |
| CreateDynamicControl() |
Предоставляет механизм для классов, производных от DynamicField переопределения создания DynamicControl объекта. |
| CreateField() |
Создает и возвращает новый экземпляр DynamicField класса. |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| ExtractValuesFromCell(IOrderedDictionary, DataControlFieldCell, DataControlRowState, Boolean) |
Извлекает значение поля данных из текущей ячейки таблицы и добавляет значение в указанный словарь. |
| GetAttribute(String) |
Извлекает указанное значение атрибута. |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| Initialize(Boolean, Control) |
Выполняет инициализацию базового экземпляра для поля управления данными. (Унаследовано от DataControlField) |
| InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32) |
Добавляет текст или элементы управления в указанную ячейку. |
| LoadViewState(Object) |
Восстанавливает ранее сохраненное состояние представления источника данных. (Унаследовано от DataControlField) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| OnFieldChanged() |
Вызывает событие |
| SaveViewState() |
Сохраняет изменения, внесенные DataControlField в состояние представления с момента публикации страницы на сервер. (Унаследовано от DataControlField) |
| SetAttribute(String, String) |
Задает атрибут, связанный DynamicField с объектом. |
| ToString() |
Возвращает строку, представляющую этот DataControlField объект. (Унаследовано от DataControlField) |
| TrackViewState() |
Позволяет DataControlField объекту отслеживать изменения состояния представления, чтобы они могли храниться в свойстве элемента управления ViewState и сохраняться в запросах на одну и ту же страницу. (Унаследовано от DataControlField) |
| ValidateSupportsCallback() |
При переопределении в производном классе сигнализирует о том, что элементы управления, содержащиеся в поле, поддерживают обратные вызовы. (Унаследовано от 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) |
Форматирует указанное значение поля с помощью указанных параметров форматирования. |