次の方法で共有


FormView.Row プロパティ

定義

FormView コントロール内のデータ行を表すFormViewRow オブジェクトを取得します。

public:
 virtual property System::Web::UI::WebControls::FormViewRow ^ Row { System::Web::UI::WebControls::FormViewRow ^ get(); };
[System.ComponentModel.Browsable(false)]
public virtual System.Web.UI.WebControls.FormViewRow Row { get; }
[<System.ComponentModel.Browsable(false)>]
member this.Row : System.Web.UI.WebControls.FormViewRow
Public Overridable ReadOnly Property Row As FormViewRow

プロパティ値

FormView コントロール内のデータ行を表すFormViewRow

属性

次の例では、 Row プロパティを使用して、 ItemCreated イベント中にデータ行のプロパティにアクセスする方法を示します。


<%@ page language="C#" %>
<%@ import namespace="System.Data" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
  
  void EmployeeFormView_ItemCreated(Object sender, EventArgs e)
  {
    // Use the Row property to retrieve the data row from 
    // the FormView control.
    FormViewRow row = EmployeeFormView.Row;
    
    // Get the data item bound to the FormView control.
    DataRowView rowView = (DataRowView)EmployeeFormView.DataItem;

    // Set the ToolTip property of the data row. 
    row.ToolTip = rowView["FirstName"].ToString() + " " +
      rowView["LastName"].ToString();
  }
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>FormView Row Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>FormView Row Example</h3>
                       
      <asp:formview id="EmployeeFormView"
        datasourceid="EmployeeSource"
        allowpaging="true"
        datakeynames="EmployeeID"
        onitemcreated="EmployeeFormView_ItemCreated"  
        runat="server">
        
        <itemtemplate>
        
          <table>
            <tr>
              <td>
                <asp:image id="EmployeeImage"
                  imageurl='<%# Eval("PhotoPath") %>'
                  alternatetext='<%# Eval("LastName") %>' 
                  runat="server"/>
              </td>
              <td>
                <h3><%# Eval("FirstName") %> <%# Eval("LastName") %></h3>      
                <%# Eval("Title") %>        
              </td>
            </tr>
          </table>
        
        </itemtemplate>
          
      </asp:formview>
          
      <!-- 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], [PhotoPath] From [Employees]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" 
        runat="server"/>
            
    </form>
  </body>
</html>

<%@ page language="VB" %>
<%@ import namespace="System.Data" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
  
  Sub EmployeeFormView_ItemCreated(ByVal sender As Object, ByVal e As EventArgs)
  
    ' Use the Row property to retrieve the data row from 
    ' the FormView control.
    Dim row As FormViewRow = EmployeeFormView.Row
    
    ' Get the data item bound to the FormView control.
    Dim rowView As DataRowView = CType(EmployeeFormView.DataItem, DataRowView)

    ' Set the ToolTip property of the data row. 
    row.ToolTip = rowView("FirstName").ToString() & " " & _
      rowView("LastName").ToString()
  
  End Sub
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>FormView Row Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>FormView Row Example</h3>
                       
      <asp:formview id="EmployeeFormView"
        datasourceid="EmployeeSource"
        allowpaging="true"
        datakeynames="EmployeeID"
        onitemcreated="EmployeeFormView_ItemCreated"  
        runat="server">
        
        <itemtemplate>
        
          <table>
            <tr>
              <td>
                <asp:image id="EmployeeImage"
                  imageurl='<%# Eval("PhotoPath") %>'
                  alternatetext='<%# Eval("LastName") %>' 
                  runat="server"/>
              </td>
              <td>
                <h3><%# Eval("FirstName") %> <%# Eval("LastName") %></h3>      
                <%# Eval("Title") %>        
              </td>
            </tr>
          </table>
        
        </itemtemplate>
          
      </asp:formview>
          
      <!-- 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], [PhotoPath] From [Employees]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" 
        runat="server"/>
            
    </form>
  </body>
</html>

注釈

Row プロパティを使用して、データ行を表すFormViewRow オブジェクトにプログラムでアクセスします。 データ行には、現在のモード ( CurrentMode プロパティで指定) 用にレンダリングされたテンプレートに基づいて異なるコンテンツが含まれています。 現在のモードのテンプレートの内容にのみアクセスできます。 次の表は、各モードで使用されるテンプレートを示しています。

モード レンダリングされたテンプレート
[編集] EditItemTemplate
[挿入] InsertItemTemplate
読み 取り 専用 ItemTemplate

Row プロパティは、FormView コントロールがItemCreated イベントにデータ行を作成した後にのみ使用できます。

このプロパティは、カスタム コンテンツを追加する場合など、データ行をプログラムで操作する必要がある場合に一般的に使用されます。 Row プロパティの変更は、FormView コントロールがデータ バインドされた後に実行する必要があります。それ以外の場合は、FormView コントロールによって変更が上書きされます。

適用対象

こちらもご覧ください