FormViewUpdateEventArgsとは? わかりやすく解説

FormViewUpdateEventArgs クラス

メモ : このクラスは、.NET Framework version 2.0 で新しく追加されたものです。

ItemUpdating イベントのデータを提供します。

名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public Class FormViewUpdateEventArgs
    Inherits CancelEventArgs
Dim instance As FormViewUpdateEventArgs
public class FormViewUpdateEventArgs : CancelEventArgs
public ref class FormViewUpdateEventArgs :
 public CancelEventArgs
public class FormViewUpdateEventArgs extends
 CancelEventArgs
public class FormViewUpdateEventArgs extends
 CancelEventArgs
解説解説

FormView コントロールは、コントロール内の Update ボタン (CommandName プロパティが "Update" に設定されたボタン) がクリックされた場合に、FormView コントロールが実際にレコードを更新する前に ItemUpdating イベントを発生させます。これにより、このイベントが発生するたびにカスタム ルーチン (データ ソースのレコードを更新する前にレコードの値の HTML エンコーディングや検証を行うなど) を実行するイベント処理メソッドを提供できます。

FormViewUpdateEventArgs オブジェクトがイベント処理メソッドに渡されることにより、FormView コントロールに送信される省略可能なコマンド引数の値を確認したり、更新操作をキャンセルする必要があるかどうかを示したりできます。コマンド引数の値を確認するには、CommandArgument プロパティを使用します。更新操作をキャンセルするには、Cancel プロパティを true に設定します。更新中のレコードの元のキー フィールド値にアクセスする必要がある場合は、Keys プロパティを使用します。元のキー以外のフィールド値には、OldValues プロパティを使用してアクセスできます。更新された値 (ユーザーがキー フィールドを編集できるようにしている場合は更新されたキー フィールド値も含む) には、NewValues プロパティを使用してアクセスできます。

イベント処理の詳細については、「イベントの利用」を参照してください。

FormViewUpdateEventArgs クラスのインスタンスの初期プロパティ値の一覧については、FormViewUpdateEventArgs コンストラクタのトピックを参照してください。

使用例使用例

ItemUpdating イベントのイベント処理メソッドに渡された FormViewUpdateEventArgs オブジェクトを使用して、ユーザーが入力した値を検証する方法を次の例に示します。

<%@ Page language="VB" %>

<script runat="server">

  Sub EmployeeFormView_ItemUpdating(ByVal sender
 As Object, ByVal e As
 FormViewUpdateEventArgs) Handles EmployeeFormView.ItemUpdating

    ' Validate the field values entered by the user. This
    ' example determines whether the user left any fields
    ' empty. The names of the empty fields are added to
    ' an ArrayList object.
     
    ' Use the NewValues property to access the new 
    ' values entered by the user.
    Dim emptyFieldList As ArrayList = ValidateFields(CType(e.NewValues,
 OrderedDictionary))

    If emptyFieldList.Count > 0 Then

      ' The user left some fields empty. Display an error message.
      
      ' Use the Keys property to retrieve the key field value.
      Dim keyValue As String
 = e.Keys("EmployeeID").ToString()

      MessageLabel.Text = "You must enter a value for each field
 of record " & _
        keyValue & ".<br/>The following fields are missing:<br/><br/>"

      ' Display the missing fields.
      Dim value As String
      For Each value In
 emptyFieldList
      
        ' Use the OldValues property access the original value
        ' of a field.
        MessageLabel.Text &= value & " - Original Value
 = " & _
          e.OldValues(value).ToString() & "<br>"
        
      Next

      ' Cancel the update operation.
      e.Cancel = True

    Else
    
      ' The field values passed validation. Clear the
      ' error message label.
      MessageLabel.Text = ""
      
    End If

  End Sub

  Function ValidateFields(ByVal list As
 OrderedDictionary) As ArrayList
    
    ' Create an ArrayList object to store the
    ' names of any empty fields.
    Dim emptyFieldList As New
 ArrayList()

    ' Iterate though the field values entered by
    ' the user and check for an empty field.
    Dim entry As DictionaryEntry
    For Each entry In list
    
      If entry.Value.Equals("")
 Then
      
        ' Add the field name to the ArrayList object.
        emptyFieldList.Add(entry.Key.ToString())
        
      End If
      
    Next

    Return emptyFieldList
      
  End Function

  Sub EmployeeFormView_ModeChanged(ByVal sender
 As Object, ByVal e As
 EventArgs) Handles EmployeeFormView.ModeChanged

    ' Clear the error message label.
    MessageLabel.Text = ""
    
  End Sub

</script>

<html>
  <body>
    <form runat="server">
        
      <h3>FormViewUpdateEventArgs Example</h3>
                       
      <asp:formview id="EmployeeFormView"
        datasourceid="EmployeeSource"
        allowpaging="true"
        datakeynames="EmployeeID"
        emptydatatext="No employees found."
        runat="server">
        
        <itemtemplate>
          <table>
            <tr>
              <td rowspan="6">
                <asp:image id="EmployeeImage"
                  imageurl='<%# Eval("PhotoPath") %>'
                  alternatetext='<%# Eval("LastName") %>'
 
                  runat="server"/>
              </td>
              <td colspan="2">
                  &nbsp; 
              </td>
            </tr>
            <tr>
              <td>
                <b>Name:</b>
              </td>
              <td>
                <%# Eval("FirstName") %> <%#
 Eval("LastName") %>
              </td>
            </tr>
            <tr>
              <td>
                <b>Title:</b>
              </td>
              <td>
                <%# Eval("Title") %>
              </td>
            </tr>
            <tr height="150" valign="top">
              <td>
                <b>Address:</b>
              </td>
              <td>
                <%# Eval("Address") %><br/>
                <%# Eval("City") %> <%# Eval("Region")
 %>
                <%# Eval("PostalCode") %><br/>
                <%# Eval("Country") %>   
              </td>
            </tr>
            <tr>
              <td colspan="2">
                <asp:linkbutton id="Edit"
                  text="Edit"
                  commandname="Edit"
                  runat="server"/> 
              </td>
            </tr>
          </table>       
        </itemtemplate>
        <edititemtemplate>
          <table>
            <tr>
              <td rowspan="6">
                <asp:image id="EmployeeEditImage"
                  imageurl='<%# Eval("PhotoPath") %>'
                  alternatetext='<%# Eval("LastName") %>'
 
                  runat="server"/>
              </td>
              <td colspan="2">
                  &nbsp; 
              </td>
            </tr>
            <tr>
              <td>
                <b>Name:</b>
              </td>
              <td>
                <asp:textbox id="FirstNameUpdateTextBox"
                  text='<%# Bind("FirstName") %>'
                  runat="server"/>
                <asp:textbox id="LastNameUpdateTextBox"
                  text='<%# Bind("LastName") %>'
                  runat="server"/>
              </td>
            </tr>
            <tr>
              <td>
                <b>Title:</b>
              </td>
              <td>
                <asp:textbox id="TitleUpdateTextBox"
                  text='<%# Bind("Title") %>'
                  runat="server"/> 
              </td>
            </tr>
            <tr height="150" valign="top">
              <td>
                <b>Address:</b>
              </td>
              <td>
                <asp:textbox id="AddressUpdateTextBox"
                  text='<%# Bind("Address") %>'
                  runat="server"/>
                <br/>
                <asp:textbox id="CityUpdateTextBox"
                  text='<%# Bind("City") %>'
                  runat="server"/> 
                <asp:textbox id="RegionUpdateTextBox"
                  text='<%# Bind("Region") %>'
                  width="40"
                  runat="server"/>
                <asp:textbox id="PostalCodeUpdateTextBox"
                  text='<%# Bind("PostalCode") %>'
                  width="60"
                  runat="server"/>
                <br/>
                <asp:textbox id="CountryUpdateTextBox"
                  text='<%# Bind("Country") %>'
                  runat="server"/> 
              </td>
            </tr>
            <tr>
              <td colspan="2">
                <asp:linkbutton id="UpdateButton"
                  text="Update"
                  commandname="Update"
                  runat="server"/>
                <asp:linkbutton id="CancelButton"
                  text="Cancel"
                  commandname="Cancel"
                  runat="server"/> 
              </td>
            </tr>
          </table>       
        </edititemtemplate>
                  
      </asp:formview>
      
      <br/><br/>
      
      <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="EmployeeSource"
        selectcommand="Select [EmployeeID], [LastName], [FirstName],
 [Title], [Address], [City], [Region], [PostalCode], [Country], [HireDate], [PhotoPath]
 From [Employees]"
        updatecommand="Update [Employees] Set [LastName]=@LastName,
 [FirstName]=@FirstName, [Title]=@Title, [Address]=@Address, [City]=@City, [Region]=@Region,
 [PostalCode]=@PostalCode, [Country]=@Country Where [EmployeeID]=@EmployeeID"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
 
        runat="server"/>
            
    </form>
  </body>
</html>

<%@ Page language="C#" %>

<script runat="server">

  void EmployeeFormView_ItemUpdating(Object sender, FormViewUpdateEventArgs
 e)
  {

    // Validate the field values entered by the user. This
    // example determines whether the user left any fields
    // empty. The names of the empty fields are added to
    // an ArrayList object.
     
    // Use the NewValues property to access the new 
    // values entered by the user.
    ArrayList emptyFieldList = ValidateFields((OrderedDictionary)e.NewValues);

    if (emptyFieldList.Count > 0)
    {

      // The user left some fields empty. Display an error message.
      
      // Use the Keys property to retrieve the key field value.
      String keyValue = e.Keys["EmployeeID"].ToString();

      MessageLabel.Text = "You must enter a value for each
 field of record " +
        keyValue + ".<br/>The following fields are missing:<br/><br/>";

      // Display the missing fields.
      foreach (String value in emptyFieldList)
      {
        // Use the OldValues property to access the original value
        // of a field.
        MessageLabel.Text += value + " - Original Value = " + 
          e.OldValues[value].ToString() + "<br>";
      }

      // Cancel the update operation.
      e.Cancel = true;

    }
    else
    {
      // The field values passed validation. Clear the
      // error message label.
      MessageLabel.Text = "";
    }

  }

  ArrayList ValidateFields(OrderedDictionary list)
  {
    
    // Create an ArrayList object to store the
    // names of any empty fields.
    ArrayList emptyFieldList = new ArrayList();

    // Iterate though the field values entered by
    // the user and check for an empty field.
    foreach (DictionaryEntry entry in list)
    {
      if (entry.Value.Equals(""))
      {
        // Add the field name to the ArrayList object.
        emptyFieldList.Add(entry.Key.ToString());
      }
    }

    return emptyFieldList;
  }

  void EmployeeFormView_ModeChanged(Object sender, EventArgs e)
  {
      // Clear the error message label.
      MessageLabel.Text = "";
  }

</script>

<html>
  <body>
    <form runat="server">
        
      <h3>FormViewUpdateEventArgs Example</h3>
                       
      <asp:formview id="EmployeeFormView"
        datasourceid="EmployeeSource"
        allowpaging="true"
        datakeynames="EmployeeID"
        emptydatatext="No employees found."
        onitemupdating="EmployeeFormView_ItemUpdating"
        onmodechanged="EmployeeFormView_ModeChanged"   
        runat="server">
        
        <itemtemplate>
          <table>
            <tr>
              <td rowspan="6">
                <asp:image id="EmployeeImage"
                  imageurl='<%# Eval("PhotoPath") %>'
                  alternatetext='<%# Eval("LastName") %>' 
                  runat="server"/>
              </td>
              <td colspan="2">
                  &nbsp; 
              </td>
            </tr>
            <tr>
              <td>
                <b>Name:</b>
              </td>
              <td>
                <%# Eval("FirstName") %> <%# Eval("LastName")
 %>
              </td>
            </tr>
            <tr>
              <td>
                <b>Title:</b>
              </td>
              <td>
                <%# Eval("Title") %>
              </td>
            </tr>
            <tr height="150" valign="top">
              <td>
                <b>Address:</b>
              </td>
              <td>
                <%# Eval("Address") %><br/>
                <%# Eval("City") %> <%# Eval("Region")
 %>
                <%# Eval("PostalCode") %><br/>
                <%# Eval("Country") %>   
              </td>
            </tr>
            <tr>
              <td colspan="2">
                <asp:linkbutton id="Edit"
                  text="Edit"
                  commandname="Edit"
                  runat="server"/> 
              </td>
            </tr>
          </table>       
        </itemtemplate>
        <edititemtemplate>
          <table>
            <tr>
              <td rowspan="6">
                <asp:image id="EmployeeEditImage"
                  imageurl='<%# Eval("PhotoPath") %>'
                  alternatetext='<%# Eval("LastName") %>' 
                  runat="server"/>
              </td>
              <td colspan="2">
                  &nbsp; 
              </td>
            </tr>
            <tr>
              <td>
                <b>Name:</b>
              </td>
              <td>
                <asp:textbox id="FirstNameUpdateTextBox"
                  text='<%# Bind("FirstName") %>'
                  runat="server"/>
                <asp:textbox id="LastNameUpdateTextBox"
                  text='<%# Bind("LastName") %>'
                  runat="server"/>
              </td>
            </tr>
            <tr>
              <td>
                <b>Title:</b>
              </td>
              <td>
                <asp:textbox id="TitleUpdateTextBox"
                  text='<%# Bind("Title") %>'
                  runat="server"/> 
              </td>
            </tr>
            <tr height="150" valign="top">
              <td>
                <b>Address:</b>
              </td>
              <td>
                <asp:textbox id="AddressUpdateTextBox"
                  text='<%# Bind("Address") %>'
                  runat="server"/>
                <br/>
                <asp:textbox id="CityUpdateTextBox"
                  text='<%# Bind("City") %>'
                  runat="server"/> 
                <asp:textbox id="RegionUpdateTextBox"
                  text='<%# Bind("Region") %>'
                  width="40"
                  runat="server"/>
                <asp:textbox id="PostalCodeUpdateTextBox"
                  text='<%# Bind("PostalCode") %>'
                  width="60"
                  runat="server"/>
                <br/>
                <asp:textbox id="CountryUpdateTextBox"
                  text='<%# Bind("Country") %>'
                  runat="server"/> 
              </td>
            </tr>
            <tr>
              <td colspan="2">
                <asp:linkbutton id="UpdateButton"
                  text="Update"
                  commandname="Update"
                  runat="server"/>
                <asp:linkbutton id="CancelButton"
                  text="Cancel"
                  commandname="Cancel"
                  runat="server"/> 
              </td>
            </tr>
          </table>       
        </edititemtemplate>
                  
      </asp:formview>
      
      <br/><br/>
      
      <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="EmployeeSource"
        selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title],
 [Address], [City], [Region], [PostalCode], [Country], [HireDate], [PhotoPath] From
 [Employees]"
        updatecommand="Update [Employees] Set [LastName]=@LastName, [FirstName]=@FirstName,
 [Title]=@Title, [Address]=@Address, [City]=@City, [Region]=@Region, [PostalCode]=@PostalCode,
 [Country]=@Country Where [EmployeeID]=@EmployeeID"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
 
        runat="server"/>
            
    </form>
  </body>
</html>

.NET Framework のセキュリティ.NET Framework のセキュリティ
継承階層継承階層
System.Object
   System.EventArgs
     System.ComponentModel.CancelEventArgs
      System.Web.UI.WebControls.FormViewUpdateEventArgs
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
FormViewUpdateEventArgs メンバ
System.Web.UI.WebControls 名前空間
FormView クラス
FormViewUpdateEventHandler
CancelEventArgs
FormView.ItemUpdating イベント
Cancel
CommandArgument
Keys
NewValues
OldValues
OnItemUpdating

FormViewUpdateEventArgs コンストラクタ

メモ : このコンストラクタは、.NET Framework version 2.0 で新しく追加されたものです。

FormViewUpdateEventArgs クラスの新しいインスタンスを初期化します。

名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public Sub New ( _
    commandArgument As Object _
)
Dim commandArgument As Object

Dim instance As New FormViewUpdateEventArgs(commandArgument)
public FormViewUpdateEventArgs (
    Object commandArgument
)
public:
FormViewUpdateEventArgs (
    Object^ commandArgument
)
public FormViewUpdateEventArgs (
    Object commandArgument
)
public function FormViewUpdateEventArgs (
    commandArgument : Object
)

パラメータ

commandArgument

FormView コントロールに渡される省略可能なコマンド引数。

解説解説
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
FormViewUpdateEventArgs クラス
FormViewUpdateEventArgs メンバ
System.Web.UI.WebControls 名前空間
FormView クラス
FormViewUpdateEventHandler
FormView.ItemUpdating イベント
CommandArgument

FormViewUpdateEventArgs プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ Cancel  イベントをキャンセルするかどうかを示す値を取得または設定します。 ( CancelEventArgs から継承されます。)
パブリック プロパティ CommandArgument FormView コントロールに渡される、更新操作用のコマンド引数を取得します。
パブリック プロパティ Keys 更新するレコードの元のキー フィールドの名前と値のペアが格納されているディクショナリを取得します。
パブリック プロパティ NewValues 更新するレコードの新しいフィールドの名前と値のペアが格納されているディクショナリを取得します。
パブリック プロパティ OldValues 更新するレコードの元のキー以外のフィールドの名前と値のペアが格納されているディクショナリを取得します。
参照参照

関連項目

FormViewUpdateEventArgs クラス
System.Web.UI.WebControls 名前空間
FormView クラス
FormViewUpdateEventHandler
CancelEventArgs
FormView.ItemUpdating イベント
Cancel
CommandArgument
Keys
NewValues
OldValues
OnItemUpdating

FormViewUpdateEventArgs メソッド


パブリック メソッドパブリック メソッド

プロテクト メソッドプロテクト メソッド
参照参照

関連項目

FormViewUpdateEventArgs クラス
System.Web.UI.WebControls 名前空間
FormView クラス
FormViewUpdateEventHandler
CancelEventArgs
FormView.ItemUpdating イベント
Cancel
CommandArgument
Keys
NewValues
OldValues
OnItemUpdating

FormViewUpdateEventArgs メンバ

ItemUpdating イベントのデータを提供します。

FormViewUpdateEventArgs データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド FormViewUpdateEventArgs FormViewUpdateEventArgs クラスの新しいインスタンスを初期化します。
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ Cancel  イベントをキャンセルするかどうかを示す値を取得または設定します。(CancelEventArgs から継承されます。)
パブリック プロパティ CommandArgument FormView コントロールに渡される、更新操作用のコマンド引数を取得します。
パブリック プロパティ Keys 更新するレコードの元のキー フィールドの名前と値のペアが格納されているディクショナリを取得します。
パブリック プロパティ NewValues 更新するレコードの新しいフィールドの名前と値のペアが格納されているディクショナリを取得します。
パブリック プロパティ OldValues 更新するレコードの元のキー以外のフィールドの名前と値のペアが格納されているディクショナリを取得します。
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

FormViewUpdateEventArgs クラス
System.Web.UI.WebControls 名前空間
FormView クラス
FormViewUpdateEventHandler
CancelEventArgs
FormView.ItemUpdating イベント
Cancel
CommandArgument
Keys
NewValues
OldValues
OnItemUpdating



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「FormViewUpdateEventArgs」の関連用語

FormViewUpdateEventArgsのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



FormViewUpdateEventArgsのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS