ObjectDataSourceObjectEventHandler デリゲートとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > ObjectDataSourceObjectEventHandler デリゲートの意味・解説 

ObjectDataSourceObjectEventHandler デリゲート

メモ : このデリゲートは、.NET Framework version 2.0 で新しく追加されたものです。

ObjectDataSource コントロールの ObjectCreating イベントおよび ObjectCreated イベントを処理するメソッドを表します。

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

Public Delegate Sub ObjectDataSourceObjectEventHandler
 ( _
    sender As Object, _
    e As ObjectDataSourceEventArgs _
)
Dim instance As New ObjectDataSourceObjectEventHandler(AddressOf
 HandlerMethod)
public delegate void ObjectDataSourceObjectEventHandler
 (
    Object sender,
    ObjectDataSourceEventArgs e
)
public delegate void ObjectDataSourceObjectEventHandler
 (
    Object^ sender, 
    ObjectDataSourceEventArgs^ e
)
/** @delegate */
public delegate void ObjectDataSourceObjectEventHandler
 (
    Object sender, 
    ObjectDataSourceEventArgs e
)
JScript では、デリゲートは使用できますが、新規に宣言することはできません。

パラメータ

sender

イベントのソース。

e

イベント データを格納している ObjectDataSourceEventArgs。

解説解説
使用例使用例

ビジネス オブジェクトおよび GridView コントロールで、ObjectDataSource コントロールを使用して情報を取得および表示する方法を次のコード例に示します。実世界の多くのシナリオでは、この例のように ObjectDataSource コントロールでビジネス オブジェクトの既定インスタンスを使用するのは不可能な場合がありますし、また適切でない場合があります。この例の場合、ObjectDataSource は既定のコンストラクタを正常に呼び出すことができません。これは例外をスローするからです。いくつかのケースでは、既定のコンストラクタが保護される場合があります。またその他のケースでは、既定のコンストラクタがビジネス オブジェクトを目的の状態に初期化しない場合があります。いずれにせよ、ビジネス オブジェクトは自身でインスタンス化できますし、ハンドラに渡される ObjectDataSourceEventArgs オブジェクトの ObjectInstance プロパティにそのインスタンスを設定できます。ObjectDataSource は、このビジネス オブジェクトのインスタンスを使用して処理を実行します。

<%@ Import namespace="Samples.AspNet.VB"
 %>
<%@ Page language="vb" %>
<Script runat="server">
Private Sub NorthwindLogicCreating(sender As
 Object, e As ObjectDataSourceEventArgs)

    ' Create an instance of the business object using a non-default
 constructor.
    Dim eLogic As EmployeeLogic = New
 EmployeeLogic("Not created by the default constructor!")
    
    ' Set the ObjectInstance property so that the ObjectDataSource uses
 the created instance.
    e.ObjectInstance = eLogic
    
End Sub ' NorthwindLogicCreating

</Script>
<html>
  <head>
    <title>ObjectDataSource - VB Example</title>
  </head>
  <body>
    <form id="Form1" method="post"
 runat="server">

        <asp:gridview
          id="GridView1"
          runat="server"
          datasourceid="ObjectDataSource1">
        </asp:gridview>

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetAllEmployees"
          onobjectcreating="NorthwindLogicCreating"
          typename="Samples.AspNet.VB.EmployeeLogic"
 >
        </asp:objectdatasource>

    </form>
  </body>
</html>
<%@ Import namespace="Samples.AspNet.CS" %>
<%@ Page language="c#" %>
<Script runat="server">
private void NorthwindLogicCreating(object
 sender, ObjectDataSourceEventArgs e)
{
    // Create an instance of the business object using a non-default
 constructor.
    EmployeeLogic eLogic = new EmployeeLogic("Not created
 by the default constructor!");
    
    // Set the ObjectInstance property so that the ObjectDataSource
 uses the created instance.
    e.ObjectInstance = eLogic;
}

</Script>
<html>
  <head>
    <title>ObjectDataSource - C# Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">

        <asp:gridview
          id="GridView1"
          runat="server"
          datasourceid="ObjectDataSource1">
        </asp:gridview>

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetAllEmployees"
          onobjectcreating="NorthwindLogicCreating"
          typename="Samples.AspNet.CS.EmployeeLogic" >
        </asp:objectdatasource>

    </form>
  </body>
</html>

前の例で使用した基本ビジネス オブジェクトのコード例を次に示します。

Imports System
Imports System.Collections
Imports System.Web.UI
Imports System.Web.UI.WebControls

Namespace Samples.AspNet.VB
  Public Class EmployeeLogic
    
    
    Public Sub New() 
        Throw New NotSupportedException("Initialize
 data.")
    
    End Sub 'New
    
    
    Public Sub New(ByVal
 data As String) 
        _data = data
    
    End Sub 'New
    
    Private _data As String
    
    
    ' Returns a collection of NorthwindEmployee objects.
    Public Function GetAllEmployees() As
 ICollection 
        Dim al As New ArrayList()
        al.Add(_data)
        Return al
    
    End Function 'GetAllEmployees
  End Class 'EmployeeLogic 
End Namespace ' Samples.AspNet.VB
namespace Samples.AspNet.CS {

using System;
using System.Collections;
using System.Web.UI;
using System.Web.UI.WebControls;

  public class EmployeeLogic {

    public EmployeeLogic() {  
        throw new NotSupportedException("Initialize data.");
    }
    
    public EmployeeLogic(string data) {
        _data = data;
    }

    private string _data;
    
    // Returns a collection of NorthwindEmployee objects.
    public ICollection GetAllEmployees () {
      ArrayList al = new ArrayList();      
      al.Add(_data);        
      return al;
    }
    
  }

}
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
System.Web.UI.WebControls 名前空間
ObjectDataSourceMethodEventHandler デリゲート
ObjectDataSource クラス
OnObjectCreating
OnObjectCreated



英和和英テキスト翻訳

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

辞書ショートカット

すべての辞書の索引

「ObjectDataSourceObjectEventHandler デリゲート」の関連用語

ObjectDataSourceObjectEventHandler デリゲートのお隣キーワード
検索ランキング

   

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



ObjectDataSourceObjectEventHandler デリゲートのページの著作権

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

©2026 GRAS Group, Inc.RSS