DataGrid.ItemDataBound イベントとは? わかりやすく解説

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

DataGrid.ItemDataBound イベント

項目が DataGrid コントロールデータ連結された後に発生します

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

Public Event ItemDataBound As
 DataGridItemEventHandler
Dim instance As DataGrid
Dim handler As DataGridItemEventHandler

AddHandler instance.ItemDataBound, handler
public event DataGridItemEventHandler ItemDataBound
public:
event DataGridItemEventHandler^ ItemDataBound {
    void add (DataGridItemEventHandler^ value);
    void remove (DataGridItemEventHandler^ value);
}
/** @event */
public void add_ItemDataBound (DataGridItemEventHandler
 value)

/** @event */
public void remove_ItemDataBound (DataGridItemEventHandler
 value)
JScript では、イベント使用できますが、新規に宣言することはできません。
解説解説
使用例使用例

ItemDataBound イベントハンドラ指定およびコーディングして、DataGrid の項目がデータ連結され順序表示する方法次の例に示します

<%@ Page Language="VB" AutoEventWireup="True"
 %>
<%@ Import Namespace="System.Data"
 %>
 
<html>
<script language="VB" runat="server">
 
    Dim Cart As DataTable
    Dim CartView As DataView
    Function CreateDataSource() As ICollection
        Dim dt As New DataTable()
        Dim dr As DataRow
        
        dt.Columns.Add(New DataColumn("IntegerValue",
 GetType(Int32)))
        dt.Columns.Add(New DataColumn("StringValue",
 GetType(String)))
        dt.Columns.Add(New DataColumn("CurrencyValue",
 GetType(Double)))
        
        Dim i As Integer
        For i = 0 To 9
            dr = dt.NewRow()
            
            dr(0) = i
            dr(1) = "Item " & i.ToString()
            dr(2) = 1.23 *(i + 1)
            
            dt.Rows.Add(dr)
        Next i
        
        Dim dv As New DataView(dt)
        Return dv
    End Function 'CreateDataSource


    Sub Page_Load(sender As Object,
 e As EventArgs)
        
        If Not IsPostBack Then
            ' Need to load this data only once.
            ItemsGrid.DataSource = CreateDataSource()
            ItemsGrid.DataBind()
        End If
    End Sub 'Page_Load
     

    Sub Item_Bound(sender As Object,
 e As DataGridItemEventArgs)
        
        Label1.Text = Label1.Text & " " &
 e.Item.ItemIndex
    End Sub 'Item_Bound 
 
</script>
 
<body>
 
   <form runat=server>

      <h3>DataGrid ItemDataBound Example</h3>
 
      <asp:DataGrid id="ItemsGrid" runat="server"
           BorderColor="black"
           BorderWidth="1"
           CellPadding="3"
           ShowFooter="true"
           OnItemDataBound="Item_Bound"
           AutoGenerateColumns="true">

         <HeaderStyle BackColor="#00aaaa">
         </HeaderStyle>

         <FooterStyle BackColor="#00aaaa">
         </FooterStyle>
   
      </asp:DataGrid>
 
      <br>
 
      <asp:Label id="Label1" 
           Text="Order of items data bound: " 
           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" %>
<%@ Import Namespace="System.Data" %>
 
<html>
<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_Bound(Object sender, DataGridItemEventArgs e) 
   {
 
      Label1.Text = Label1.Text + " " + e.Item.ItemIndex;
 
   }
 
</script>
 
<body>
 
   <form runat=server>

      <h3>DataGrid ItemDataBound Example</h3>
 
      <asp:DataGrid id="ItemsGrid" runat="server"
           BorderColor="black"
           BorderWidth="1"
           CellPadding="3"
           ShowFooter="true"
           OnItemDataBound="Item_Bound"
           AutoGenerateColumns="true">

         <HeaderStyle BackColor="#00aaaa">
         </HeaderStyle>

         <FooterStyle BackColor="#00aaaa">
         </FooterStyle>
   
      </asp:DataGrid>
 
      <br>
 
      <asp:Label id="Label1" 
           Text="Order of items data bound: " 
           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="JScript" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
 
<html>
<script language="JScript" runat="server">
 
      var Cart : DataTable;
      var CartView : DataView;
 
      function CreateDataSource() : ICollection 
      {
       
         var dt : DataTable = new DataTable();
         var dr : DataRow;
 
         dt.Columns.Add(new DataColumn("IntegerValue",
 Int32));
         dt.Columns.Add(new DataColumn("StringValue",
 System.String));
         dt.Columns.Add(new DataColumn("CurrencyValue",
 double));
 
         for (var i : int
 = 0; i < 9; i++) 
         {
            dr = dt.NewRow();
 
            dr[0] = i;
            dr[1] = "Item " + i.ToString();
            dr[2] = 1.23 * (i+1);
 
            dt.Rows.Add(dr);
         }
 
         var dv : DataView = new DataView(dt);
         return dv;
      }
 

   function Page_Load(sender, e : EventArgs) 
   {
 
      if (!IsPostBack) 
      {
         // Need to load this data only once.
         ItemsGrid.DataSource = CreateDataSource();
         ItemsGrid.DataBind();
      }
 
   }
 
   function Item_Bound(sender, e : DataGridItemEventArgs) 
   {
 
      Label1.Text = Label1.Text + " " + e.Item.ItemIndex;
 
   }
 
</script>
 
<body>
 
   <form runat=server>

      <h3>DataGrid ItemDataBound Example</h3>
 
      <asp:DataGrid id="ItemsGrid" runat="server"
           BorderColor="black"
           BorderWidth="1"
           CellPadding="3"
           ShowFooter="true"
           OnItemDataBound="Item_Bound"
           AutoGenerateColumns="true">

         <HeaderStyle BackColor="#00aaaa">
         </HeaderStyle>

         <FooterStyle BackColor="#00aaaa">
         </FooterStyle>
   
      </asp:DataGrid>
 
      <br>
 
      <asp:Label id="Label1" 
           Text="Order of items data bound: " 
           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="VB" AutoEventWireup="True"
 %>
<%@ Import Namespace="System.Data"
 %>
 
<html>
   <script runat="server">
 
      Function CreateDataSource() As ICollection

         ' Create sample data for the DataGrid control.
         Dim dt As DataTable = New
 DataTable()
         Dim dr As DataRow 
 
         ' Define the columns of the table.
         dt.Columns.Add(New DataColumn("IntegerValue",
 GetType(Int32)))
         dt.Columns.Add(New DataColumn("StringValue",
 GetType(String)))
         dt.Columns.Add(New DataColumn("CurrencyValue",
 GetType(Double)))
 
         ' Populate the table with sample values.
         Dim i As Integer
         

         For i=0 To 10 

            dr = dt.NewRow()
 
            dr(0) = i
            dr(1) = "Item " & i.ToString()
            dr(2) = 1.23 * (i + 1)
 
            dt.Rows.Add(dr)
         
         Next i
 
         Dim dv As DataView = New
 DataView(dt)

         return dv
      
      End Function
 
      Sub Page_Load(sender As Object,
 e As EventArgs)
 
         ' Load sample data only once, when the page is first loaded.
         If Not IsPostBack Then
         
            ItemsGrid.DataSource = CreateDataSource()
            ItemsGrid.DataBind()
         
         End If

      End Sub
 
      Sub Item_Bound(sender As Object,
 e As DataGridItemEventArgs) 
 
         ' 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 Or
 _
             e.Item.ItemType = ListItemType.AlternatingItem Then
 
            ' Retrieve the text of the CurrencyColumn from the DataGridItem
            ' and convert the value to a Double.
            Dim Price As Double
 = 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")
        
         End If         
 
      End Sub
 
</script>
 
<body>
 
   <form 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" Debug="true"
 %>
<%@ Import Namespace="System.Data" %>
 
<html>
   <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>
 
<body>
 
   <form 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="VB" AutoEventWireup="True"
 %>
<%@ Import Namespace="System.Data"
 %>
 
<html>
   <script runat="server">
 
      Function CreateDataSource() As ICollection

         ' Create sample data for the DataGrid control.
         Dim dt As DataTable = New
 DataTable()
         Dim dr As DataRow 
 
         ' Define the columns of the table.
         dt.Columns.Add(New DataColumn("IntegerValue",
 GetType(Int32)))
         dt.Columns.Add(New DataColumn("StringValue",
 GetType(String)))
         dt.Columns.Add(New DataColumn("CurrencyValue",
 GetType(Double)))
 
         ' Populate the table with sample values.
         Dim i As Integer
         

         For i=0 To 10 

            dr = dt.NewRow()
 
            dr(0) = i
            dr(1) = "Item " & i.ToString()
            dr(2) = 1.23 * (i + 1)
 
            dt.Rows.Add(dr)
         
         Next i
 
         Dim dv As DataView = New
 DataView(dt)

         return dv
      
      End Function
 
      Sub Page_Load(sender As Object,
 e As EventArgs)

         ' Manually register the event-handling method for the  
         ' ItemDataBound event of the DataGrid control.
         AddHandler ItemsGrid.ItemDataBound, AddressOf
 Item_Bound
 
         ' Load sample data only once, when the page is first loaded.
         If Not IsPostBack Then
         
            ItemsGrid.DataSource = CreateDataSource()
            ItemsGrid.DataBind()
         
         End If

      End Sub
 
      Sub Item_Bound(sender As Object,
 e As DataGridItemEventArgs) 
 
         ' 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 Or
 _
             e.Item.ItemType = ListItemType.AlternatingItem Then
 
            ' Retrieve the text of the CurrencyColumn from the DataGridItem
            ' and convert the value to a Double.
            Dim Price As Double
 = 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")
        
         End If         
 
      End Sub
 
</script>
 
<body>
 
   <form 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>

<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
 
<html>
   <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>
 
<body>
 
   <form 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>

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
DataGrid クラス
DataGrid メンバ
System.Web.UI.WebControls 名前空間
OnItemDataBound
DataGridItemEventArgs
DataGridItemEventHandler


このページでは「.NET Framework クラス ライブラリ リファレンス」からDataGrid.ItemDataBound イベントを検索した結果を表示しています。
Weblioに収録されているすべての辞書からDataGrid.ItemDataBound イベントを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からDataGrid.ItemDataBound イベントを検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「DataGrid.ItemDataBound イベント」の関連用語

DataGrid.ItemDataBound イベントのお隣キーワード
検索ランキング

   

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



DataGrid.ItemDataBound イベントのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

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

©2024 GRAS Group, Inc.RSS