DataListCommandEventArgs クラス
アセンブリ: System.Web (system.web.dll 内)


CancelCommand イベントは、DataList コントロールの項目の Cancel ボタンがクリックされると発生します。
DeleteCommand イベントは、DataList コントロールの項目の Delete ボタンがクリックされると発生します。
EditCommand イベントは、DataList コントロールの項目の Edit ボタンがクリックされると発生します。
ItemCommand イベントは、DataList コントロール内の項目で、ボタンがクリックされたときに発生します。これにより、特定のコマンド ボタンがクリックされたタイミングをプログラムによって判断し、適切なアクションを実行できます。このイベントは、通常 DataList コントロールのカスタム コマンド ボタンを処理するために使用します。
UpdateCommand イベントは、DataList コントロールの項目の Update ボタンがクリックされると発生します。
DataListCommandEventArgs のインスタンスの初期プロパティ値の一覧については、DataListCommandEventArgs コンストラクタのトピックを参照してください。
イベント処理の詳細については、「イベントの利用」を参照してください。

DataList コントロールの EditCommand、UpdateCommand、CancelCommand、および DeleteCommand の各イベントのイベント ハンドラを定義する方法を次の例に示します。この例では、DataList コントロールの各コマンド プロパティのイベント ハンドラを設定し、宣言によってイベント ハンドラを指定します。
<%@ Page Language="VB" AutoEventWireup="True" %> <%@ Import Namespace="System.Data" %> <html> <head> <script runat="server"> ' The Cart and CartView objects temporarily store the data source ' for the DataList control while the page is being processed. Dim Cart As DataTable = New DataTable() Dim CartView As DataView Sub Page_Load(sende As Object, e As EventArgs) ' With a database, use an select query to retrieve the data. ' Because the data source in this example is an in-memory ' DataTable, retrieve the data from session state if it exists; ' otherwise, create the data source. GetSource() ' The DataGrid control maintains state between posts to the server; ' it only needs to be bound to a data source the first time the ' page is loaded or when the data source is updated. If Not IsPostBack Then BindList() End If End Sub Sub BindList() ' Set the data source and bind to the DataList control. ItemsList.DataSource = CartView ItemsList.DataBind() End Sub Sub GetSource() ' For this example, the data source is a DataTable that ' is stored in session state. If the data source does not exist , ' create it; otherwise, load the data. If Session("ShoppingCart") Is Nothing Then ' Create the sample data. Dim dr As DataRow ' Define the columns of the table. Cart.Columns.Add(new DataColumn("Qty", GetType(Int32))) Cart.Columns.Add(new DataColumn("Item", GetType(String))) Cart.Columns.Add(new DataColumn("Price", GetType(Double))) ' Store the table in session state to persist its values ' between posts to the server. Session("ShoppingCart") = Cart ' Populate the DataTable with sample data. Dim i As Integer For i = 1 To 9 dr = Cart.NewRow() If (i Mod 2) <> 0 Then dr(0) = 2 Else dr(0) = 1 End If dr(1) = "Item " & i.ToString() dr(2) = (1.23 * (i + 1)) Cart.Rows.Add(dr) Next i Else ' Retrieve the sample data from session state. Cart = CType(Session("ShoppingCart"), DataTable) End If ' Create a DataView and specify the field to sort by. CartView = New DataView(Cart) CartView.Sort="Item" Return End Sub Sub Edit_Command(sender As Object, e As DataListCommandEventArgs) ' Set the EditItemIndex property to the index of the item clicked ' in the DataList control to enable editing for that item. Be sure ' to rebind the DataList to the data source to refresh the control. ItemsList.EditItemIndex = e.Item.ItemIndex BindList() End Sub Sub Cancel_Command(sender As Object, e As DataListCommandEventArgs) ' Set the EditItemIndex property to -1 to exit editing mode. Be sure ' to rebind the DataList to the data source to refresh the control. ItemsList.EditItemIndex = -1 BindList() End Sub Sub Delete_Command(sender As Object, e As DataListCommandEventArgs) ' Retrieve the name of the item to remove. Dim item As String = (CType(e.Item.FindControl("ItemLabel"), Label)).Text ' Filter the CartView for the selected item and remove it from ' the data source. CartView.RowFilter = "Item='" & item & "'" If CartView.Count > 0 Then CartView.Delete(0) End If CartView.RowFilter = "" ' Set the EditItemIndex property to -1 to exit editing mode. Be sure ' to rebind the DataList to the data source to refresh the control. ItemsList.EditItemIndex = -1 BindList() End Sub Sub Update_Command(sender As Object, e As DataListCommandEventArgs) ' Retrieve the updated values from the selected item. Dim item As String = _ (CType(e.Item.FindControl("ItemLabel"), Label)).Text Dim qty As String = _ (CType(e.Item.FindControl("QtyTextBox"), TextBox)).Text Dim price As String = _ (CType(e.Item.FindControl("PriceTextBox"), TextBox)).Text ' With a database, use an update command to update the data. ' Because the data source in this example is an in-memory ' DataTable, delete the old row and replace it with a new one. ' Filter the CartView for the selected item and remove it from ' the data source. CartView.RowFilter = "Item='" & item & "'" If CartView.Count > 0 Then CartView.Delete(0) End If CartView.RowFilter = "" ' *************************************************************** ' Insert data validation code here. Make sure to validate the ' values entered by the user before converting to the appropriate ' data types and updating the data source. ' *************************************************************** ' Add a new entry to replace the previous item. Dim dr As DataRow = Cart.NewRow() dr(0) = qty dr(1) = item ' If necessary, remove the '$' character from the price before ' converting the price to a Double. If price.Chars(0) = "$" Then dr(2) = Convert.ToDouble(price.Substring(1)) Else dr(2) = Convert.ToDouble(price) End If Cart.Rows.Add(dr) ' Set the EditItemIndex property to -1 to exit editing mode. ' Be sure to rebind the DataList to the data source to refresh ' the control. ItemsList.EditItemIndex = -1 BindList() End Sub </script> </head> <body> <form runat=server> <h3>DataList Edit Example</h3> Click <b>Edit</b> to edit the values of the item. <br><br> <asp:DataList id="ItemsList" GridLines="Both" RepeatColumns="3" RepeatDirection="Horizontal" CellPadding="3" CellSpacing="0" OnEditCommand="Edit_Command" OnUpdateCommand="Update_Command" OnDeleteCommand="Delete_Command" OnCancelCommand="Cancel_Command" runat="server"> <HeaderStyle BackColor="#aaaadd"> </HeaderStyle> <AlternatingItemStyle BackColor="Gainsboro"> </AlternatingItemStyle> <EditItemStyle BackColor="yellow"> </EditItemStyle> <HeaderTemplate> Items </HeaderTemplate> <ItemTemplate> Item: <%# DataBinder.Eval(Container.DataItem, "Item") %> <br> Quantity: <%# DataBinder.Eval(Container.DataItem, "Qty") %> <br> Price: <%# DataBinder.Eval(Container.DataItem, "Price", "{0:c}") %> <br> <asp:LinkButton id="EditButton" Text="Edit" CommandName="Edit" runat="server"/> </ItemTemplate> <EditItemTemplate> Item: <asp:Label id="ItemLabel" Text='<%# DataBinder.Eval(Container.DataItem, "Item") %>' runat="server"/> <br> Quantity: <asp:TextBox id="QtyTextBox" Text='<%# DataBinder.Eval(Container.DataItem, "Qty") %>' runat="server"/> <br> Price: <asp:TextBox id="PriceTextBox" Text='<%# DataBinder.Eval(Container.DataItem, "Price", "{0:c}") %>' runat="server"/> <br> <asp:LinkButton id="UpdateButton" Text="Update" CommandName="Update" runat="server"/> <asp:LinkButton id="DeleteButton" Text="Delete" CommandName="Delete" runat="server"/> <asp:LinkButton id="CancelButton" Text="Cancel" CommandName="Cancel" runat="server"/> </EditItemTemplate> </asp:DataList> </form> </body> </html>
<%@ Page Language="C#" AutoEventWireup="True" %> <%@ Import Namespace="System.Data" %> <html> <head> <script runat="server"> // The Cart and CartView objects temporarily store the data source // for the DataList control while the page is being processed. DataTable Cart = new DataTable(); DataView CartView; void Page_Load(Object sender, EventArgs e) { // With a database, use an select query to retrieve the data. // Because the data source in this example is an in-memory // DataTable, retrieve the data from session state if it exists; // otherwise, create the data source. GetSource(); // The DataList control maintains state between posts to the server; // it only needs to be bound to a data source the first time the // page is loaded or when the data source is updated. if (!IsPostBack) { BindList(); } } void BindList() { // Set the data source and bind to the DataList control. ItemsList.DataSource = CartView; ItemsList.DataBind(); } void GetSource() { // For this example, the data source is a DataTable that // is stored in session state. If the data source does not exist, // create it; otherwise, load the data. if (Session["ShoppingCart"] == null) { // Create the sample data. DataRow dr; // Define the columns of the table. Cart.Columns.Add(new DataColumn("Qty", typeof(Int32))); Cart.Columns.Add(new DataColumn("Item", typeof(String))); Cart.Columns.Add(new DataColumn("Price", typeof(Double))); // Store the table in session state to persist its values // between posts to the server. Session["ShoppingCart"] = Cart; // Populate the DataTable with sample data. for (int i = 1; i <= 9; i++) { dr = Cart.NewRow(); if (i % 2 != 0) { dr[0] = 2; } else { dr[0] = 1; } dr[1] = "Item " + i.ToString(); dr[2] = (1.23 * (i + 1)); Cart.Rows.Add(dr); } } else { // Retrieve the sample data from session state. Cart = (DataTable)Session["ShoppingCart"]; } // Create a DataView and specify the field to sort by. CartView = new DataView(Cart); CartView.Sort="Item"; return; } void Edit_Command(Object sender, DataListCommandEventArgs e) { // Set the EditItemIndex property to the index of the item clicked // in the DataList control to enable editing for that item. Be sure // to rebind the DataList to the data source to refresh the control. ItemsList.EditItemIndex = e.Item.ItemIndex; BindList(); } void Cancel_Command(Object sender, DataListCommandEventArgs e) { // Set the EditItemIndex property to -1 to exit editing mode. Be sure // to rebind the DataList to the data source to refresh the control. ItemsList.EditItemIndex = -1; BindList(); } void Delete_Command(Object sender, DataListCommandEventArgs e) { // Retrieve the name of the item to remove. String item = ((Label)e.Item.FindControl("ItemLabel")).Text; // Filter the CartView for the selected item and remove it from // the data source. CartView.RowFilter = "Item='" + item + "'"; if (CartView.Count > 0) { CartView.Delete(0); } CartView.RowFilter = ""; // Set the EditItemIndex property to -1 to exit editing mode. Be sure // to rebind the DataList to the data source to refresh the control. ItemsList.EditItemIndex = -1; BindList(); } void Update_Command(Object sender, DataListCommandEventArgs e) { // Retrieve the updated values from the selected item. String item = ((Label)e.Item.FindControl("ItemLabel")).Text; String qty = ((TextBox)e.Item.FindControl("QtyTextBox")).Text; String price = ((TextBox)e.Item.FindControl("PriceTextBox")).Text; // With a database, use an update command to update the data. // Because the data source in this example is an in-memory // DataTable, delete the old row and replace it with a new one. // Filter the CartView for the selected item and remove it from // the data source. CartView.RowFilter = "Item='" + item + "'"; if (CartView.Count > 0) { CartView.Delete(0); } CartView.RowFilter = ""; // *************************************************************** // Insert data validation code here. Make sure to validate the // values entered by the user before converting to the appropriate // data types and updating the data source. // *************************************************************** // Add a new entry to replace the previous item. DataRow dr = Cart.NewRow(); dr[0] = qty; dr[1] = item; // If necessary, remove the '$' character from the price before // converting the price to a Double. if(price[0] == '$') { dr[2] = Convert.ToDouble(price.Substring(1)); } else { dr[2] = Convert.ToDouble(price); } Cart.Rows.Add(dr); // Set the EditItemIndex property to -1 to exit editing mode. // Be sure to rebind the DataList to the data source to refresh // the control. ItemsList.EditItemIndex = -1; BindList(); } </script> </head> <body> <form runat=server> <h3>DataList Edit Example</h3> Click <b>Edit</b> to edit the values of the item. <br><br> <asp:DataList id="ItemsList" GridLines="Both" RepeatColumns="3" RepeatDirection="Horizontal" CellPadding="3" CellSpacing="0" OnEditCommand="Edit_Command" OnUpdateCommand="Update_Command" OnDeleteCommand="Delete_Command" OnCancelCommand="Cancel_Command" runat="server"> <HeaderStyle BackColor="#aaaadd"> </HeaderStyle> <AlternatingItemStyle BackColor="Gainsboro"> </AlternatingItemStyle> <EditItemStyle BackColor="yellow"> </EditItemStyle> <HeaderTemplate> Items </HeaderTemplate> <ItemTemplate> Item: <%# DataBinder.Eval(Container.DataItem, "Item") %> <br> Quantity: <%# DataBinder.Eval(Container.DataItem, "Qty") %> <br> Price: <%# DataBinder.Eval(Container.DataItem, "Price", "{0:c}") %> <br> <asp:LinkButton id="EditButton" Text="Edit" CommandName="Edit" runat="server"/> </ItemTemplate> <EditItemTemplate> Item: <asp:Label id="ItemLabel" Text='<%# DataBinder.Eval(Container.DataItem, "Item") %>' runat="server"/> <br> Quantity: <asp:TextBox id="QtyTextBox" Text='<%# DataBinder.Eval(Container.DataItem, "Qty") %>' runat="server"/> <br> Price: <asp:TextBox id="PriceTextBox" Text='<%# DataBinder.Eval(Container.DataItem, "Price", "{0:c}") %>' runat="server"/> <br> <asp:LinkButton id="UpdateButton" Text="Update" CommandName="Update" runat="server"/> <asp:LinkButton id="DeleteButton" Text="Delete" CommandName="Delete" runat="server"/> <asp:LinkButton id="CancelButton" Text="Cancel" CommandName="Cancel" runat="server"/> </EditItemTemplate> </asp:DataList> </form> </body> </html>
Page_Load メソッドで、イベント ハンドラを指定し、それらをプログラムによって各イベントに追加する方法を次のコード例に示します。
<%@ Page Language="VB" AutoEventWireup="True" %> <%@ Import Namespace="System.Data" %> <html> <head> <script runat="server"> ' The Cart and CartView objects temporarily store the data source ' for the DataList control while the page is being processed. Dim Cart As DataTable = New DataTable() Dim CartView As DataView Sub Page_Load(sende As Object, e As EventArgs) ' With a database, use an select query to retrieve the data. ' Because the data source in this example is an in-memory ' DataTable, retrieve the data from session state if it exists; ' otherwise, create the data source. GetSource() ' The DataGrid control maintains state between posts to the server; ' it only needs to be bound to a data source the first time the ' page is loaded or when the data source is updated. If Not IsPostBack Then BindList() End If ' Manually register the event-handling methods. AddHandler ItemsList.EditCommand, AddressOf Edit_Command AddHandler ItemsList.UpdateCommand, AddressOf Update_Command AddHandler ItemsList.DeleteCommand, AddressOf Delete_Command AddHandler ItemsList.CancelCommand, AddressOf Cancel_Command End Sub Sub BindList() ' Set the data source and bind to the DataList control. ItemsList.DataSource = CartView ItemsList.DataBind() End Sub Sub GetSource() ' For this example, the data source is a DataTable that ' is stored in session state. If the data source does not exist , ' create it; otherwise, load the data. If Session("ShoppingCart") Is Nothing Then ' Create the sample data. Dim dr As DataRow ' Define the columns of the table. Cart.Columns.Add(new DataColumn("Qty", GetType(Int32))) Cart.Columns.Add(new DataColumn("Item", GetType(String))) Cart.Columns.Add(new DataColumn("Price", GetType(Double))) ' Store the table in session state to persist its values ' between posts to the server. Session("ShoppingCart") = Cart ' Populate the DataTable with sample data. Dim i As Integer For i = 1 To 9 dr = Cart.NewRow() If (i Mod 2) <> 0 Then dr(0) = 2 Else dr(0) = 1 End If dr(1) = "Item " & i.ToString() dr(2) = (1.23 * (i + 1)) Cart.Rows.Add(dr) Next i Else ' Retrieve the sample data from session state. Cart = CType(Session("ShoppingCart"), DataTable) End If ' Create a DataView and specify the field to sort by. CartView = New DataView(Cart) CartView.Sort="Item" Return End Sub Sub Edit_Command(sender As Object, e As DataListCommandEventArgs) ' Set the EditItemIndex property to the index of the item clicked ' in the DataList control to enable editing for that item. Be sure ' to rebind the DataList to the data source to refresh the control. ItemsList.EditItemIndex = e.Item.ItemIndex BindList() End Sub Sub Cancel_Command(sender As Object, e As DataListCommandEventArgs) ' Set the EditItemIndex property to -1 to exit editing mode. Be sure ' to rebind the DataList to the data source to refresh the control. ItemsList.EditItemIndex = -1 BindList() End Sub Sub Delete_Command(sender As Object, e As DataListCommandEventArgs) ' Retrieve the name of the item to remove. Dim item As String = (CType(e.Item.FindControl("ItemLabel"), Label)).Text ' Filter the CartView for the selected item and remove it from ' the data source. CartView.RowFilter = "Item='" & item & "'" If CartView.Count > 0 Then CartView.Delete(0) End If CartView.RowFilter = "" ' Set the EditItemIndex property to -1 to exit editing mode. Be sure ' to rebind the DataList to the data source to refresh the control. ItemsList.EditItemIndex = -1 BindList() End Sub Sub Update_Command(sender As Object, e As DataListCommandEventArgs) ' Retrieve the updated values from the selected item. Dim item As String = _ (CType(e.Item.FindControl("ItemLabel"), Label)).Text Dim qty As String = _ (CType(e.Item.FindControl("QtyTextBox"), TextBox)).Text Dim price As String = _ (CType(e.Item.FindControl("PriceTextBox"), TextBox)).Text ' With a database, use an update command to update the data. ' Because the data source in this example is an in-memory ' DataTable, delete the old row and replace it with a new one. ' Filter the CartView for the selected item and remove it from ' the data source. CartView.RowFilter = "Item='" & item & "'" If CartView.Count > 0 Then CartView.Delete(0) End If CartView.RowFilter = "" ' *************************************************************** ' Insert data validation code here. Make sure to validate the ' values entered by the user before converting to the appropriate ' data types and updating the data source. ' *************************************************************** ' Add a new entry to replace the previous item. Dim dr As DataRow = Cart.NewRow() dr(0) = qty dr(1) = item ' If necessary, remove the '$' character from the price before ' converting the price to a Double. If price.Chars(0) = "$" Then dr(2) = Convert.ToDouble(price.Substring(1)) Else dr(2) = Convert.ToDouble(price) End If Cart.Rows.Add(dr) ' Set the EditItemIndex property to -1 to exit editing mode. ' Be sure to rebind the DataList to the data source to refresh ' the control. ItemsList.EditItemIndex = -1 BindList() End Sub </script> </head> <body> <form runat=server> <h3>DataList Edit Example</h3> Click <b>Edit</b> to edit the values of the item. <br><br> <asp:DataList id="ItemsList" GridLines="Both" RepeatColumns="3" RepeatDirection="Horizontal" CellPadding="3" CellSpacing="0" OnEditCommand="Edit_Command" OnUpdateCommand="Update_Command" OnDeleteCommand="Delete_Command" OnCancelCommand="Cancel_Command" runat="server"> <HeaderStyle BackColor="#aaaadd"> </HeaderStyle> <AlternatingItemStyle BackColor="Gainsboro"> </AlternatingItemStyle> <EditItemStyle BackColor="yellow"> </EditItemStyle> <HeaderTemplate> Items </HeaderTemplate> <ItemTemplate> Item: <%# DataBinder.Eval(Container.DataItem, "Item") %> <br> Quantity: <%# DataBinder.Eval(Container.DataItem, "Qty") %> <br> Price: <%# DataBinder.Eval(Container.DataItem, "Price", "{0:c}") %> <br> <asp:LinkButton id="EditButton" Text="Edit" CommandName="Edit" runat="server"/> </ItemTemplate> <EditItemTemplate> Item: <asp:Label id="ItemLabel" Text='<%# DataBinder.Eval(Container.DataItem, "Item") %>' runat="server"/> <br> Quantity: <asp:TextBox id="QtyTextBox" Text='<%# DataBinder.Eval(Container.DataItem, "Qty") %>' runat="server"/> <br> Price: <asp:TextBox id="PriceTextBox" Text='<%# DataBinder.Eval(Container.DataItem, "Price", "{0:c}") %>' runat="server"/> <br> <asp:LinkButton id="UpdateButton" Text="Update" CommandName="Update" runat="server"/> <asp:LinkButton id="DeleteButton" Text="Delete" CommandName="Delete" runat="server"/> <asp:LinkButton id="CancelButton" Text="Cancel" CommandName="Cancel" runat="server"/> </EditItemTemplate> </asp:DataList> </form> </body> </html>
<%@ Page Language="C#" AutoEventWireup="True" %> <%@ Import Namespace="System.Data" %> <html> <head> <script runat="server"> // The Cart and CartView objects temporarily store the data source // for the DataList control while the page is being processed. DataTable Cart = new DataTable(); DataView CartView; void Page_Load(Object sender, EventArgs e) { // With a database, use an select query to retrieve the data. // Because the data source in this example is an in-memory // DataTable, retrieve the data from session state if it exists; // otherwise, create the data source. GetSource(); // The DataList control maintains state between posts to the server; // it only needs to be bound to a data source the first time the // page is loaded or when the data source is updated. if (!IsPostBack) { BindList(); } // Manually register the event-handling methods. ItemsList.EditCommand += new DataListCommandEventHandler(this.Edit_Command); ItemsList.UpdateCommand += new DataListCommandEventHandler(this.Update_Command); ItemsList.DeleteCommand += new DataListCommandEventHandler(this.Delete_Command); ItemsList.CancelCommand += new DataListCommandEventHandler(this.Cancel_Command); } void BindList() { // Set the data source and bind to the DataList control. ItemsList.DataSource = CartView; ItemsList.DataBind(); } void GetSource() { // For this example, the data source is a DataTable that // is stored in session state. If the data source does not exist, // create it; otherwise, load the data. if (Session["ShoppingCart"] == null) { // Create the sample data. DataRow dr; // Define the columns of the table. Cart.Columns.Add(new DataColumn("Qty", typeof(Int32))); Cart.Columns.Add(new DataColumn("Item", typeof(String))); Cart.Columns.Add(new DataColumn("Price", typeof(Double))); // Store the table in session state to persist its values // between posts to the server. Session["ShoppingCart"] = Cart; // Populate the DataTable with sample data. for (int i = 1; i <= 9; i++) { dr = Cart.NewRow(); if (i % 2 != 0) { dr[0] = 2; } else { dr[0] = 1; } dr[1] = "Item " + i.ToString(); dr[2] = (1.23 * (i + 1)); Cart.Rows.Add(dr); } } else { // Retrieve the sample data from session state. Cart = (DataTable)Session["ShoppingCart"]; } // Create a DataView and specify the field to sort by. CartView = new DataView(Cart); CartView.Sort="Item"; return; } void Edit_Command(Object sender, DataListCommandEventArgs e) { // Set the EditItemIndex property to the index of the item clicked // in the DataList control to enable editing for that item. Be sure // to rebind the DataList to the data source to refresh the control. ItemsList.EditItemIndex = e.Item.ItemIndex; BindList(); } void Cancel_Command(Object sender, DataListCommandEventArgs e) { // Set the EditItemIndex property to -1 to exit editing mode. Be sure // to rebind the DataList to the data source to refresh the control. ItemsList.EditItemIndex = -1; BindList(); } void Delete_Command(Object sender, DataListCommandEventArgs e) { // Retrieve the name of the item to remove. String item = ((Label)e.Item.FindControl("ItemLabel")).Text; // Filter the CartView for the selected item and remove it from // the data source. CartView.RowFilter = "Item='" + item + "'"; if (CartView.Count > 0) { CartView.Delete(0); } CartView.RowFilter = ""; // Set the EditItemIndex property to -1 to exit editing mode. Be sure // to rebind the DataList to the data source to refresh the control. ItemsList.EditItemIndex = -1; BindList(); } void Update_Command(Object sender, DataListCommandEventArgs e) { // Retrieve the updated values from the selected item. String item = ((Label)e.Item.FindControl("ItemLabel")).Text; String qty = ((TextBox)e.Item.FindControl("QtyTextBox")).Text; String price = ((TextBox)e.Item.FindControl("PriceTextBox")).Text; // With a database, use an update command to update the data. // Because the data source in this example is an in-memory // DataTable, delete the old row and replace it with a new one. // Filter the CartView for the selected item and remove it from // the data source. CartView.RowFilter = "Item='" + item + "'"; if (CartView.Count > 0) { CartView.Delete(0); } CartView.RowFilter = ""; // *************************************************************** // Insert data validation code here. Make sure to validate the // values entered by the user before converting to the appropriate // data types and updating the data source. // *************************************************************** // Add a new entry to replace the previous item. DataRow dr = Cart.NewRow(); dr[0] = qty; dr[1] = item; // If necessary, remove the '$' character from the price before // converting the price to a Double. if(price[0] == '$') { dr[2] = Convert.ToDouble(price.Substring(1)); } else { dr[2] = Convert.ToDouble(price); } Cart.Rows.Add(dr); // Set the EditItemIndex property to -1 to exit editing mode. // Be sure to rebind the DataList to the data source to refresh // the control. ItemsList.EditItemIndex = -1; BindList(); } </script> </head> <body> <form runat=server> <h3>DataList Edit Example</h3> Click <b>Edit</b> to edit the values of the item. <br><br> <asp:DataList id="ItemsList" GridLines="Both" RepeatColumns="3" RepeatDirection="Horizontal" CellPadding="3" CellSpacing="0" runat="server"> <HeaderStyle BackColor="#aaaadd"> </HeaderStyle> <AlternatingItemStyle BackColor="Gainsboro"> </AlternatingItemStyle> <EditItemStyle BackColor="yellow"> </EditItemStyle> <HeaderTemplate> Items </HeaderTemplate> <ItemTemplate> Item: <%# DataBinder.Eval(Container.DataItem, "Item") %> <br> Quantity: <%# DataBinder.Eval(Container.DataItem, "Qty") %> <br> Price: <%# DataBinder.Eval(Container.DataItem, "Price", "{0:c}") %> <br> <asp:LinkButton id="EditButton" Text="Edit" CommandName="Edit" runat="server"/> </ItemTemplate> <EditItemTemplate> Item: <asp:Label id="ItemLabel" Text='<%# DataBinder.Eval(Container.DataItem, "Item") %>' runat="server"/> <br> Quantity: <asp:TextBox id="QtyTextBox" Text='<%# DataBinder.Eval(Container.DataItem, "Qty") %>' runat="server"/> <br> Price: <asp:TextBox id="PriceTextBox" Text='<%# DataBinder.Eval(Container.DataItem, "Price", "{0:c}") %>' runat="server"/> <br> <asp:LinkButton id="UpdateButton" Text="Update" CommandName="Update" runat="server"/> <asp:LinkButton id="DeleteButton" Text="Delete" CommandName="Delete" runat="server"/> <asp:LinkButton id="CancelButton" Text="Cancel" CommandName="Cancel" runat="server"/> </EditItemTemplate> </asp:DataList> </form> </body> </html>


System.EventArgs
System.Web.UI.WebControls.CommandEventArgs
System.Web.UI.WebControls.DataListCommandEventArgs


Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


DataListCommandEventArgs コンストラクタ
アセンブリ: System.Web (system.web.dll 内)

Public Sub New ( _ item As DataListItem, _ commandSource As Object, _ originalArgs As CommandEventArgs _ )
Dim item As DataListItem Dim commandSource As Object Dim originalArgs As CommandEventArgs Dim instance As New DataListCommandEventArgs(item, commandSource, originalArgs)
public DataListCommandEventArgs ( DataListItem item, Object commandSource, CommandEventArgs originalArgs )
public: DataListCommandEventArgs ( DataListItem^ item, Object^ commandSource, CommandEventArgs^ originalArgs )
public DataListCommandEventArgs ( DataListItem item, Object commandSource, CommandEventArgs originalArgs )
public function DataListCommandEventArgs ( item : DataListItem, commandSource : Object, originalArgs : CommandEventArgs )

このコンストラクタを使用して、DataListCommandEventArgs クラスの新しいインスタンスを作成し、初期化します。
DataListCommandEventArgs のインスタンスがこのコンストラクタの呼び出しによって作成される場合、次のプロパティは指定した値に初期化されます。

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


DataListCommandEventArgs プロパティ

名前 | 説明 | |
---|---|---|
![]() | CommandArgument | コマンドの引数を取得します。 ( CommandEventArgs から継承されます。) |
![]() | CommandName | コマンド名を取得します。 ( CommandEventArgs から継承されます。) |
![]() | CommandSource | コマンドのソースを取得します。 |
![]() | Item | DataList コントロールでコマンドのソースを格納している項目を取得します。 |

DataListCommandEventArgs メソッド

名前 | 説明 | |
---|---|---|
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |

DataListCommandEventArgs メンバ
DataList コントロールの CancelCommand、DeleteCommand、EditCommand、ItemCommand、UpdateCommand の各イベントのデータを提供します。このクラスは継承できません。
DataListCommandEventArgs データ型で公開されるメンバを以下の表に示します。


名前 | 説明 | |
---|---|---|
![]() | CommandArgument | コマンドの引数を取得します。(CommandEventArgs から継承されます。) |
![]() | CommandName | コマンド名を取得します。(CommandEventArgs から継承されます。) |
![]() | CommandSource | コマンドのソースを取得します。 |
![]() | Item | DataList コントロールでコマンドのソースを格納している項目を取得します。 |

名前 | 説明 | |
---|---|---|
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |

- DataListCommandEventArgsのページへのリンク