DataGridItemEventArgs Class
Provides data for the ItemCreated and ItemDataBound events of the DataGrid control. This class cannot be inherited.
Assembly: System.Web (in System.Web.dll)
| Name | Description | |
|---|---|---|
![]() | DataGridItemEventArgs(DataGridItem) | Initializes a new instance of the DataGridItemEventArgs class. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | Finalize() | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetType() | |
![]() | MemberwiseClone() | |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
The ItemCreated event is raised when an item in the DataGrid control is created.
The ItemDataBound event is raised when an item in the DataGrid control is bound to a data source.
For a list of initial property values for an instance of DataGridItemEventArgs, see the DataGridItemEventArgs constructor.
For more information about handling events, see NIB: Events and Delegates.
The following code example demonstrates how to specify and code a handler for the ItemCreated event to display the order in which the items in the DataGrid control are created.
<%@ 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) { Label1.Text = Label1.Text + " " + e.Item.ItemIndex; } </script> <head runat="server"> <title>DataGridItemEventArgs Example</title> </head> <body> <form id="form1" runat="server"> <h3>DataGridItemEventArgs 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="Order of items created: " runat="server"/> <br /> <asp:Label id="Label2" Text="Note: The -1's refer to the header and footer." runat="server"/> </form> </body> </html>
<%@ Page Language="C#" AutoEventWireup="True" Debug="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 runat="server"> ICollection CreateDataSource() { // Create sample data for the DataGrid control. DataTable dt = new DataTable(); DataRow dr; // Define the columns of the table. dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32))); dt.Columns.Add(new DataColumn("StringValue", typeof(String))); dt.Columns.Add(new DataColumn("CurrencyValue", typeof(Double))); // Populate the table with sample values. 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) { // Load sample data only once, when the page is first loaded. if (!IsPostBack) { ItemsGrid.DataSource = CreateDataSource(); ItemsGrid.DataBind(); } } void Item_Bound(Object sender, DataGridItemEventArgs e) { // Use the ItemDataBound event to customize the DataGrid control. // The ItemDataBound event allows you to access the data before // the item is displayed in the control. In this example, the // ItemDataBound event is used to format the items in the // CurrencyColumn in currency format. if((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem)) { // Retrieve the text of the CurrencyColumn from the DataGridItem // and convert the value to a Double. Double Price = Convert.ToDouble(e.Item.Cells[2].Text); // Format the value as currency and redisplay it in the DataGrid. e.Item.Cells[2].Text = Price.ToString("c"); } } </script> <head runat="server"> <title>DataGrid ItemDataBound Example</title> </head> <body> <form id="form1" runat="server"> <h3>DataGrid ItemDataBound Example</h3> <asp:DataGrid id="ItemsGrid" runat="server" BorderColor="black" BorderWidth="1" CellPadding="3" ShowFooter="true" OnItemDataBound="Item_Bound"> <HeaderStyle BackColor="#00aaaa"> </HeaderStyle> <FooterStyle BackColor="#00aaaa"> </FooterStyle> </asp:DataGrid> </form> </body> </html>
<%@ 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 runat="server"> ICollection CreateDataSource() { // Create sample data for the DataGrid control. DataTable dt = new DataTable(); DataRow dr; // Define the columns of the table. dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32))); dt.Columns.Add(new DataColumn("StringValue", typeof(String))); dt.Columns.Add(new DataColumn("CurrencyValue", typeof(Double))); // Populate the table with sample values. 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) { // Manually register the event-handling method for the // ItemDataBound event of the DataGrid control. ItemsGrid.ItemDataBound += new DataGridItemEventHandler(this.Item_Bound); // Load sample data only once, when the page is first loaded. if (!IsPostBack) { ItemsGrid.DataSource = CreateDataSource(); ItemsGrid.DataBind(); } } void Item_Bound(Object sender, DataGridItemEventArgs e) { // Use the ItemDataBound event to customize the DataGrid control. // The ItemDataBound event allows you to access the data before // the item is displayed in the control. In this example, the // ItemDataBound event is used to format the items in the // CurrencyColumn in currency format. if((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem)) { // Retrieve the text of the CurrencyColumn from the DataGridItem // and convert the value to a Double. Double Price = Convert.ToDouble(e.Item.Cells[2].Text); // Format the value as currency and redisplay it in the DataGrid. e.Item.Cells[2].Text = Price.ToString("c"); } } </script> <head runat="server"> <title>DataGrid ItemDataBound Example</title> </head> <body> <form id="form1" runat="server"> <h3>DataGrid ItemDataBound Example</h3> <asp:DataGrid id="ItemsGrid" runat="server" BorderColor="black" BorderWidth="1" CellPadding="3" ShowFooter="true"> <HeaderStyle BackColor="#00aaaa"> </HeaderStyle> <FooterStyle BackColor="#00aaaa"> </FooterStyle> </asp:DataGrid> </form> </body> </html>
Available since 1.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
.jpeg?cs-save-lang=1&cs-lang=csharp)
.jpeg?cs-save-lang=1&cs-lang=csharp)
.jpeg?cs-save-lang=1&cs-lang=csharp)