แก้ไข

แชร์ผ่าน


FormView.Row Property

Definition

Gets the FormViewRow object that represents the data row in a FormView control.

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

Property Value

The FormViewRow that represents the data row in a FormView control.

Attributes

Examples

The following example demonstrates how to use the Row property to access the properties of the data row during the ItemCreated event.


<%@ 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>

Remarks

Use the Row property to programmatically access the FormViewRow object that represents the data row. The data row contains different content based on the template rendered for the current mode (specified by the CurrentMode property). You can only access the contents of the template for the current mode. The following table shows which template is used for each mode.

Mode Template rendered
Edit EditItemTemplate
Insert InsertItemTemplate
Read-only ItemTemplate

Note

The Row property is available only after the FormView control creates the data row in the ItemCreated event.

This property is commonly used when you need to programmatically manipulate the data row, for example when adding custom content. Any modification to the Row property must be performed after the FormView control has been data-bound; otherwise, the FormView control overwrites any changes.

Applies to

See also