DetailsView.DataItem 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取绑定到 DetailsView 控件的数据项。
public:
virtual property System::Object ^ DataItem { System::Object ^ get(); };
[System.ComponentModel.Browsable(false)]
public virtual object DataItem { get; }
[<System.ComponentModel.Browsable(false)>]
member this.DataItem : obj
Public Overridable ReadOnly Property DataItem As Object
属性值
一个 Object,表示绑定到 DetailsView 控件的数据项。
实现
- 属性
示例
下面的代码示例演示如何使用 DataItem 属性来确定数据项中字段的值。
<%@ Page language="C#" %>
<%@ import namespace="System.Data"%>
<!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 CustomerDetailView_DataBound(object sender,
EventArgs e)
{
DataRowView rowView = (DataRowView)CustomerDetailView.DataItem;
if (rowView.Row[0].ToString() == "SpecialID")
{
CustomerDetailView.FieldHeaderStyle.BackColor =
System.Drawing.Color.Red;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsView ModeChanging Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView ModeChanging Example</h3>
<asp:detailsview id="CustomerDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneraterows="true"
autogenerateeditbutton="true"
OnDataBound="CustomerDetailView_DataBound"
allowpaging="true"
runat="server">
<fieldheaderstyle backcolor="Navy"
forecolor="White"/>
</asp:detailsview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the web.config file. -->
<asp:SqlDataSource ID="DetailsViewSource" runat="server"
ConnectionString=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
InsertCommand="INSERT INTO [Customers]([CustomerID],
[CompanyName], [Address], [City], [PostalCode], [Country])
VALUES (@CustomerID, @CompanyName, @Address, @City,
@PostalCode, @Country)"
SelectCommand="Select [CustomerID], [CompanyName],
[Address], [City], [PostalCode], [Country] From
[Customers]">
</asp:SqlDataSource>
</form>
</body>
</html>
<%@ Page language="VB" %>
<%@ import namespace="System.Data"%>
<!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 CustomerDetailView_DataBound( _
ByVal sender As Object, ByVal e As EventArgs)
Dim rowView As DataRowView = _
CType(CustomerDetailView.DataItem, DataRowView)
If rowView.Row(0).ToString() = "SpecialID" Then
CustomerDetailView.FieldHeaderStyle.BackColor = _
System.Drawing.Color.Red
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsView ModeChanging Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView ModeChanging Example</h3>
<asp:detailsview id="CustomerDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneraterows="true"
autogenerateeditbutton="true"
OnDataBound="CustomerDetailView_DataBound"
allowpaging="true"
runat="server">
<fieldheaderstyle backcolor="Navy"
forecolor="White"/>
</asp:detailsview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the web.config file. -->
<asp:SqlDataSource ID="DetailsViewSource" runat="server"
ConnectionString=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
InsertCommand="INSERT INTO [Customers]([CustomerID],
[CompanyName], [Address], [City], [PostalCode], [Country])
VALUES (@CustomerID, @CompanyName, @Address, @City,
@PostalCode, @Country)"
SelectCommand="Select [CustomerID], [CompanyName],
[Address], [City], [PostalCode], [Country] From
[Customers]">
</asp:SqlDataSource>
</form>
</body>
</html>
注解
DataItem使用 属性访问绑定到 DetailsView 控件的数据项。 数据项通常用于直接访问当前记录的字段值。 此属性返回的 Object 的类型因数据源而异。 例如,当控件 SqlDataSource 绑定到控件 DetailsView 时, DataRowView 将返回 对象。
注意
此属性仅在数据绑定发生后可用。 在数据绑定发生之前,此属性返回 null
。 当控件处于插入模式并返回 null
时,DetailsView此属性也不适用。