DetailsView.ItemDeleting イベント
アセンブリ: System.Web (system.web.dll 内)

Dim instance As DetailsView Dim handler As DetailsViewDeleteEventHandler AddHandler instance.ItemDeleting, handler
public: event DetailsViewDeleteEventHandler^ ItemDeleting { void add (DetailsViewDeleteEventHandler^ value); void remove (DetailsViewDeleteEventHandler^ value); }

ItemDeleting イベントは、DetailsView コントロール内の Delete ボタンがクリックされた場合に、削除操作の前に発生します。これにより、このイベントが発生したときにカスタム ルーチン (キャンセル操作や削除操作など) を実行するイベント ハンドラを提供できます。
DetailsViewDeleteEventArgs オブジェクトがイベント ハンドラに渡され、これにより削除されるレコードのインデックスを確認したり、削除操作をキャンセルしたりする必要があることを示したりできます。削除操作をキャンセルするには、Cancel プロパティを true に設定します。値がデータ ソースに渡される前に、必要に応じて Keys コレクションおよび Values コレクションを操作することもできます。

ItemDeleting イベントを使用して、ユーザーが DetailsView コントロールの最後の項目を削除しようとした場合の削除操作をキャンセルする方法のコード例を次に示します。
<%@ Page language="VB" %> <script runat="server"> Sub CustomerDetailView_ItemDeleting(ByVal sender As Object, ByVal e As DetailsViewDeleteEventArgs) ' Cancel the delete operation if the user attempts to delete the last ' record from the data source. If (CustomerDetailView.DataItemCount <= 1) Then e.Cancel = True MessageLabel.Text = "You must keep at least one store." Else MessageLabel.Text = "" End If End Sub </script> <html> <body> <form id="Form1" runat="server"> <h3>DetailsView ItemDeleting Example</h3> <asp:detailsview id="CustomerDetailView" datasourceid="DetailsViewSource" datakeynames="CustomerID" autogeneratedeletebutton="true" autogeneraterows="true" allowpaging="true" onitemdeleting="CustomerDetailView_ItemDeleting" runat="server"> <fieldheaderstyle backcolor="Navy" forecolor="White"/> </asp:detailsview> <asp:Label id="MessageLabel" forecolor="Red" runat="server"/> <!-- 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]" DeleteCommand="DELETE FROM [Customers] WHERE [CustomerID] = @CustomerID" > </asp:SqlDataSource> </form> </body> </html>
<%@ Page language="C#" %> <script runat="server"> void CustomerDetailView_ItemDeleting(Object sender, DetailsViewDeleteEventArgs e) { // Cancel the delete operation if the user attempts to delete the last // record from the data source. if (CustomerDetailView.DataItemCount <= 1) { e.Cancel = true; MessageLabel.Text = "You must keep at least one store."; } else { MessageLabel.Text = ""; } } </script> <html> <body> <form id="Form1" runat="server"> <h3>DetailsView ItemDeleting Example</h3> <asp:detailsview id="CustomerDetailView" datasourceid="DetailsViewSource" datakeynames="CustomerID" autogeneratedeletebutton="true" autogeneraterows="true" allowpaging="true" onitemdeleting="CustomerDetailView_ItemDeleting" runat="server"> <fieldheaderstyle backcolor="Navy" forecolor="White"/> </asp:detailsview> <asp:Label id="MessageLabel" forecolor="Red" runat="server"/> <!-- 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]" DeleteCommand="DELETE FROM [Customers] WHERE [CustomerID] = @CustomerID" > </asp:SqlDataSource> </form> </body> </html>

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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からDetailsView.ItemDeleting イベントを検索する場合は、下記のリンクをクリックしてください。

- DetailsView.ItemDeleting イベントのページへのリンク