DataGridItem.DataItem プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
DataGridItem コントロールの DataGrid オブジェクトが表すデータ項目を取得または設定します。
public:
virtual property System::Object ^ DataItem { System::Object ^ get(); void set(System::Object ^ value); };
public virtual object DataItem { get; set; }
member this.DataItem : obj with get, set
Public Overridable Property DataItem As Object
プロパティ値
Object コントロールのデータ項目を表す DataGrid。
例
次のコード例は、プロパティを使用 DataItem してコントロール内のデータ項目の内容を表示する方法を DataGrid 示しています。
注意
次のコード例では、単一ファイルのコード モデルを使用しており、分離コード ファイルに直接コピーすると正しく動作しない可能性があります。 このコード例は、拡張子が .aspx の空のテキスト ファイルにコピーする必要があります。
<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<script language="C#" runat="server">
DataTable Cart;
DataView CartView;
ICollection CreateDataSource()
{
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
for (int i = 0; i < 10; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = 1.23 * (i+1);
dt.Rows.Add(dr);
}
DataView dv = new DataView(dt);
return dv;
}
void Page_Load(Object sender, EventArgs e)
{
if (!IsPostBack)
{
// Need to load this data only once.
ItemsGrid.DataSource = CreateDataSource();
ItemsGrid.DataBind();
}
}
void Item_Created(Object sender, DataGridItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item ||
e.Item.ItemType == ListItemType.AlternatingItem ||
e.Item.ItemType == ListItemType.SelectedItem ||
e.Item.ItemType == ListItemType.EditItem)
{
Label1.Text += "<br />" + e.Item.ItemType.ToString() +
" - " + ((DataRowView)e.Item.DataItem).Row.ItemArray[1].ToString();
}
else
{
Label1.Text += "<br />" + e.Item.ItemType.ToString();
}
}
</script>
<head runat="server">
<title>DataGridItem DataItem Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGridItem DataItem Example</h3>
<asp:DataGrid id="ItemsGrid" runat="server"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
ShowFooter="true"
OnItemCreated="Item_Created"
AutoGenerateColumns="true">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<FooterStyle BackColor="#00aaaa">
</FooterStyle>
</asp:DataGrid>
<br />
<asp:Label id="Label1"
Text="Items in the DataGrid Control: <br />"
runat="server"/>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<script language="VB" runat="server">
Dim Cart As DataTable
Dim CartView As DataView
Function CreateDataSource() As ICollection
Dim dt As New DataTable()
Dim dr As DataRow
dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
dt.Columns.Add(New DataColumn("StringValue", GetType(String)))
dt.Columns.Add(New DataColumn("CurrencyValue", GetType(Double)))
Dim i As Integer
For i = 0 To 9
dr = dt.NewRow()
dr(0) = i
dr(1) = "Item " & i.ToString()
dr(2) = 1.23 *(i + 1)
dt.Rows.Add(dr)
Next i
Dim dv As New DataView(dt)
Return dv
End Function 'CreateDataSource
Sub Page_Load(sender As Object, e As EventArgs)
If Not IsPostBack Then
' Need to load this data only once.
ItemsGrid.DataSource = CreateDataSource()
ItemsGrid.DataBind()
End If
End Sub 'Page_Load
Sub Item_Created(sender As Object, e As DataGridItemEventArgs)
If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.SelectedItem Or e.Item.ItemType = ListItemType.EditItem Then
Label1.Text &= "<br />" & e.Item.ItemType.ToString() & " - " & CType(e.Item.DataItem, DataRowView).Row.ItemArray(1).ToString()
Else
Label1.Text &= "<br />" & e.Item.ItemType.ToString()
End If
End Sub 'Item_Created
</script>
<head runat="server">
<title>DataGridItem DataItem Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataGridItem DataItem Example</h3>
<asp:DataGrid id="ItemsGrid" runat="server"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
ShowFooter="true"
OnItemCreated="Item_Created"
AutoGenerateColumns="true">
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<FooterStyle BackColor="#00aaaa">
</FooterStyle>
</asp:DataGrid>
<br />
<asp:Label id="Label1"
Text="Items in the DataGrid Control: <br />"
runat="server"/>
</form>
</body>
</html>
注釈
このプロパティをDataItem使用して、コントロール内のオブジェクトによって表されるデータ項目のプロパティをDataGridItemDataGrid指定または決定します。
注意
このプロパティは、コントロール内の DataGrid データ項目にのみ適用されます。 プロパティはItemType、、ListItemType.AlternatingItem
、ListItemType.SelectedItem
、またはListItemType.EditItem
に設定するListItemType.Item
必要があります。