ASPxDataView.ItemTemplate Property
Gets or sets a common template used for displaying the content of a ASPxDataView‘s data items.
Namespace: DevExpress.Web
Assembly: DevExpress.Web.v24.2.dll
Declaration
Property Value
Type | Default | Description |
---|---|---|
ITemplate | null | An object that supports the ITemplate interface. |
Remarks
Use the ItemTemplate property to define a common content for a ASPxDataView‘s data items. The template created using this property replaces the content of each data item preserving its style settings (if specified).
To display item data, populate the template with data-bound controls and use data binding expressions to associate them with the corresponding data fields. Below is an example of a simple item template.
...
<ItemTemplate>
<table>
<tr>
<td>
<dx:ASPxLabel ID="lblName" runat="server" Text='<%# Eval("Name") %>' Font-Bold="true" />
</td>
<td>
<dx:ASPxImage ID="imgPhoto" runat="server" ImageUrl='<%# Eval("ImageUrl") %>' ShowLoadingImage="true" />
</td>
</tr>
<tr>
<td>
<dx:ASPxLabel ID="lblDescription" runat="server" Text='<%# Eval("Description") %>' />
</td>
</tr>
</table>
</ItemTemplate>
...
Note
Once a template defined via the ItemTemplate property is created within a control, it is instantiated within a container object of the DataViewItemTemplateContainer type. This container object exposes a set of specific properties to which the template’s child controls can be bound.
Example
This example demonstrates how data displayed by the ASPxDataView control can be filtered on custom callbacks initiated by a call to the client PerfromCallback method.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<%@ Register Assembly="DevExpress.Web.v8.3, Version=8.3.2.0, Culture=neutral,
PublicKeyToken=b88d1754d700e49a"
Namespace="DevExpress.Web.ASPxDataView" TagPrefix="dxdv" %>
<%@ Register Assembly="DevExpress.Web.v8.3" Namespace="DevExpress.Web.ASPxEditors"
TagPrefix="dxe" %>
<!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_Load(object sender, EventArgs e) {
if(!IsPostBack) { // start value
cbCountry.DataBind();
cbCountry.Value = 254; // USA for example
}
PrepareFilter();
}
protected void PrepareFilter() {
dvAccessDataSource.SelectParameters[0].DefaultValue = cbCountry.Value.ToString();
dvCity.DataBind();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Filtering data within the ASPxDataView using custom callbacks</title>
</head>
<body>
<form id="form1" runat="server">
<table cellpadding="0" cellspacing="0">
ComboBox
<tr>
<td align="right" style="white-space: nowrap;">
<table cellpadding="0" cellspacing="0"><tr>
<td valign="middle">
<dxe:ASPxLabel ID="lblFilter" runat="server"
Text="Filter: " AssociatedControlID="cbCountry">
</dxe:ASPxLabel>
</td>
<td valign="middle">
<dxe:ASPxComboBox ID="cbCountry" runat="server"
DataSourceID="cbAccessDataSource"
TextField="Country" ValueField="CountryId"
ValueType="System.Int32" EnableIncrementalFiltering="True">
<ClientSideEvents SelectedIndexChanged="function(s, e) {
dvCity.PerformCallback();
}" />
</dxe:ASPxComboBox>
</td>
</tr></table>
</td>
</tr>
<tr><td style="height: 5px;"></td></tr> DataView
<tr>
<td>
<dxdv:ASPxDataView ID="dvCity" runat="server"
DataSourceID="dvAccessDataSource"
ClientInstanceName="dvCity" Width="580px" AllowPaging="False">
<ItemStyle Height="60px" Width="150px" />
<ItemTemplate>
<table cellpadding="0" cellspacing="0">
<tr>
<th>CountryId:</th>
<td rowspan="3"><div style="width: 5px;"></div></td>
<td><asp:Label ID="CountryIdLabel" runat="server"
Text='<%# Eval("CountryId") %>'>
</asp:Label></td>
</tr>
<tr>
<th>CityId:</th>
<td><asp:Label ID="CityIdLabel" runat="server"
Text='<%# Eval("CityId") %>'></asp:Label></td>
</tr>
<tr>
<th>City:</th>
<td><asp:Label ID="CityLabel" runat="server"
Text='<%# Eval("City") %>'>
</asp:Label></td>
</tr>
</table>
</ItemTemplate>
<Border BorderColor="#A0A0A0" BorderStyle="Solid" BorderWidth="1px" />
<Paddings Padding="5px" />
</dxdv:ASPxDataView>
</td>
</tr> </table>
<asp:AccessDataSource ID="cbAccessDataSource" runat="server"
DataFile="~/App_Data/EditorsSampleDB.mdb"
SelectCommand="SELECT * FROM [Countries]">
</asp:AccessDataSource>
<asp:AccessDataSource ID="dvAccessDataSource" runat="server"
DataFile="~/App_Data/EditorsSampleDB.mdb"
SelectCommand="SELECT * FROM [Cities] WHERE ([CountryId] = ?)">
<SelectParameters>
<asp:Parameter DefaultValue="1" Name="CountryId" Type="Int32" />
</SelectParameters>
</asp:AccessDataSource> </form>
</body>
</html>