DetailsView Classe

Definizione

Visualizza i valori di un singolo record da un'origine dati in una tabella, in cui ogni riga di dati rappresenta un campo del record. Il controllo DetailsView permette di modificare, eliminare e inserire record.

public ref class DetailsView : System::Web::UI::WebControls::CompositeDataBoundControl, System::Web::UI::ICallbackEventHandler, System::Web::UI::IDataItemContainer, System::Web::UI::IPostBackEventHandler, System::Web::UI::WebControls::ICallbackContainer, System::Web::UI::WebControls::IPostBackContainer
public ref class DetailsView : System::Web::UI::WebControls::CompositeDataBoundControl, System::Web::UI::ICallbackEventHandler, System::Web::UI::IDataItemContainer, System::Web::UI::IPostBackEventHandler, System::Web::UI::WebControls::ICallbackContainer, System::Web::UI::WebControls::IDataBoundItemControl, System::Web::UI::WebControls::IFieldControl, System::Web::UI::WebControls::IPostBackContainer
[System.Web.UI.ControlValueProperty("SelectedValue")]
public class DetailsView : System.Web.UI.WebControls.CompositeDataBoundControl, System.Web.UI.ICallbackEventHandler, System.Web.UI.IDataItemContainer, System.Web.UI.IPostBackEventHandler, System.Web.UI.WebControls.ICallbackContainer, System.Web.UI.WebControls.IPostBackContainer
[System.Web.UI.ControlValueProperty("SelectedValue")]
public class DetailsView : System.Web.UI.WebControls.CompositeDataBoundControl, System.Web.UI.ICallbackEventHandler, System.Web.UI.IDataItemContainer, System.Web.UI.IPostBackEventHandler, System.Web.UI.WebControls.ICallbackContainer, System.Web.UI.WebControls.IDataBoundItemControl, System.Web.UI.WebControls.IFieldControl, System.Web.UI.WebControls.IPostBackContainer
[<System.Web.UI.ControlValueProperty("SelectedValue")>]
type DetailsView = class
    inherit CompositeDataBoundControl
    interface IDataItemContainer
    interface INamingContainer
    interface ICallbackContainer
    interface ICallbackEventHandler
    interface IPostBackEventHandler
    interface IPostBackContainer
[<System.Web.UI.ControlValueProperty("SelectedValue")>]
type DetailsView = class
    inherit CompositeDataBoundControl
    interface IDataItemContainer
    interface INamingContainer
    interface ICallbackContainer
    interface ICallbackEventHandler
    interface IPostBackEventHandler
    interface IPostBackContainer
    interface IDataBoundItemControl
    interface IDataBoundControl
    interface IFieldControl
Public Class DetailsView
Inherits CompositeDataBoundControl
Implements ICallbackContainer, ICallbackEventHandler, IDataItemContainer, IPostBackContainer, IPostBackEventHandler
Public Class DetailsView
Inherits CompositeDataBoundControl
Implements ICallbackContainer, ICallbackEventHandler, IDataBoundItemControl, IDataItemContainer, IFieldControl, IPostBackContainer, IPostBackEventHandler
Ereditarietà
Attributi
Implementazioni

Esempio

Nell'esempio di codice seguente viene illustrato come usare un controllo in combinazione con un DetailsView controllo per uno GridView scenario di dettaglio master semplice. Visualizza i dettagli di un elemento selezionato nel GridView controllo.

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
  <form id="form1" runat="server">
    <div>
      <table>
        <tr>
          <td>
            <asp:GridView ID="GridView1" runat="server" 
              AutoGenerateColumns="False" DataSourceID="Customers"
              DataKeyNames="CustomerID">
              <Columns>
                <asp:CommandField ShowSelectButton="True" />
                <asp:BoundField DataField="ContactName" HeaderText="ContactName" />
                <asp:BoundField DataField="CompanyName" HeaderText="CompanyName" />
              </Columns>
            </asp:GridView>
          </td>
          <td valign="top">
            <asp:DetailsView ID="DetailsView1" runat="server" 
              AutoGenerateRows="True" DataKeyNames="CustomerID"
              DataSourceID="Details" Height="50px" Width="301px">
            </asp:DetailsView>
          </td>
        </tr>
      </table>
        
      <asp:SqlDataSource ID="Details" runat="server" 
        ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
        SelectCommand="SELECT * FROM [Customers] WHERE ([CustomerID] = @CustomerID)">
        <SelectParameters>
          <asp:ControlParameter ControlID="GridView1" Name="CustomerID" 
            PropertyName="SelectedValue"
            Type="String" />
        </SelectParameters>
      </asp:SqlDataSource>
      <asp:SqlDataSource ID="Customers" runat="server" 
        ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
        SelectCommand="SELECT [CompanyName], [ContactName], [CustomerID] FROM [Customers]">
      </asp:SqlDataSource>
    </div>
  </form>
</body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
  <form id="form1" runat="server">
    <div>
      <table>
        <tr>
          <td>
            <asp:GridView ID="GridView1" runat="server" 
              AutoGenerateColumns="False" DataSourceID="Customers"
              DataKeyNames="CustomerID">
              <Columns>
                <asp:CommandField ShowSelectButton="True" />
                <asp:BoundField DataField="ContactName" HeaderText="ContactName" />
                <asp:BoundField DataField="CompanyName" HeaderText="CompanyName" />
              </Columns>
            </asp:GridView>
          </td>
          <td valign="top">
            <asp:DetailsView ID="DetailsView1" runat="server" 
              AutoGenerateRows="True" DataKeyNames="CustomerID"
              DataSourceID="Details" Height="50px" Width="301px">
            </asp:DetailsView>
          </td>
        </tr>
      </table>
        
      <asp:SqlDataSource ID="Details" runat="server" 
        ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
        SelectCommand="SELECT * FROM [Customers] WHERE ([CustomerID] = @CustomerID)">
        <SelectParameters>
          <asp:ControlParameter ControlID="GridView1" Name="CustomerID" 
            PropertyName="SelectedValue"
            Type="String" />
        </SelectParameters>
      </asp:SqlDataSource>
      <asp:SqlDataSource ID="Customers" runat="server" 
        ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
        SelectCommand="SELECT [CompanyName], [ContactName], [CustomerID] FROM [Customers]">
      </asp:SqlDataSource>
    </div>
  </form>
</body>
</html>

Nell'esempio di codice seguente viene illustrato come usare il DetailsView controllo per aggiungere, eliminare e modificare i record.


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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
  void CustomerDetail_ItemInserted(object sender, 
    DetailsViewInsertedEventArgs e)
  {
    // Refresh the GridView control after a new record is inserted 
    // in the DetailsView control.
    CustomersView.DataBind();
  }

  void CustomerDetail_ItemInserting(object sender, 
    DetailsViewInsertEventArgs e)
  {
    // Iterate though the values entered by the user and HTML encode 
    // the values. This helps prevent malicious values from being 
    // stored in the data source.
    for (int i = 0; i < e.Values.Count; i++)
    {
      if (e.Values[i] != null)
      {
        e.Values[i] = Server.HtmlEncode(e.Values[i].ToString());
      }
    }
  }

  void CustomerDetail_ItemUpdated(object sender, 
    DetailsViewUpdatedEventArgs e)
  {
    // Refresh the GridView control after a new record is updated 
    // in the DetailsView control.
    CustomersView.DataBind();
  }

  void CustomerDetail_ItemUpdating(object sender, 
    DetailsViewUpdateEventArgs e)
  {
    // Iterate though the values entered by the user and HTML encode 
    // the values. This helps prevent malicious values from being 
    // stored in the data source.
    for (int i = 0; i < e.NewValues.Count; i++)
    {
      if (e.NewValues[i] != null)
      {
        e.NewValues[i] = Server.HtmlEncode(e.NewValues[i].ToString());
      }
    }
  }

  void CustomerDetail_ItemDeleted(object sender, 
    DetailsViewDeletedEventArgs e)
  {
    // Refresh the GridView control after a new record is updated 
    // in the DetailsView control.
    CustomersView.DataBind();
  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>
      DetailsView Example</title>
</head>
<body>
  <form id="Form1" runat="server">
    <h3>
      DetailsView Example</h3>
    <table cellspacing="10">
      <tr>
        <td>
          <!-- Use a GridView control in combination with      -->
          <!-- a DetailsView control to display master-detail  -->
          <!-- information. When the user selects a store from -->
          <!-- GridView control, the customers//s detailed     -->
          <!-- information is displayed in the DetailsView     -->
          <!-- control.                                        -->
          <asp:GridView ID="CustomersView" DataSourceID="Customers" 
            AutoGenerateColumns="False"
            DataKeyNames="CustomerID" runat="server">
            <HeaderStyle BackColor="Blue" ForeColor="White" />
            <Columns>
              <asp:CommandField ShowSelectButton="True" />
              <asp:BoundField DataField="ContactName" 
                HeaderText="ContactName" />
              <asp:BoundField DataField="CompanyName" 
                HeaderText="CompanyName" />
            </Columns>
          </asp:GridView>
        </td>
        <td valign="top">
          <asp:DetailsView ID="CustomerDetail" 
            DataSourceID="Details" AutoGenerateRows="false"
            AutoGenerateInsertButton="true" 
            AutoGenerateEditButton="true" 
            AutoGenerateDeleteButton="true"
            EmptyDataText="No records." 
            DataKeyNames="CustomerID" GridLines="Both" 
            OnItemInserted="CustomerDetail_ItemInserted"
            OnItemInserting="CustomerDetail_ItemInserting" 
            OnItemUpdated="CustomerDetail_ItemUpdated"
            OnItemUpdating="CustomerDetail_ItemUpdating" 
            OnItemDeleted="CustomerDetail_ItemDeleted"
            runat="server">
            <HeaderStyle BackColor="Navy" ForeColor="White" />
            <RowStyle BackColor="White" />
            <AlternatingRowStyle BackColor="LightGray" />
            <EditRowStyle BackColor="LightCyan" />
            <Fields>
              <asp:BoundField DataField="CustomerID" HeaderText="CustomerID" ReadOnly="True" />
              <asp:BoundField DataField="ContactName" HeaderText="ContactName" />
              <asp:BoundField DataField="ContactTitle" HeaderText="ContactTitle" />
              <asp:BoundField DataField="CompanyName" HeaderText="CompanyName" />
              <asp:BoundField DataField="Address" HeaderText="Address" />
              <asp:BoundField DataField="City" HeaderText="City" />
              <asp:BoundField DataField="Region" HeaderText="Region" />
              <asp:BoundField DataField="PostalCode" HeaderText="PostalCode" />
              <asp:BoundField DataField="Country" HeaderText="Country" />
              <asp:BoundField DataField="Phone" HeaderText="Phone" />
              <asp:BoundField DataField="Fax" HeaderText="Fax" />
            </Fields>
          </asp:DetailsView>
        </td>
      </tr>
    </table>
    <!-- This example uses Microsoft SQL Server and connects -->
    <!-- to the Northwind sample database.                   -->
    <!-- It is strongly recommended that each data-bound     -->
    <!-- control uses a separate data source control.        -->
    <asp:SqlDataSource ID="Customers" runat="server" 
      ConnectionString=
        "<%$ ConnectionStrings:NorthwindConnectionString %>"
      SelectCommand="SELECT [CompanyName], [ContactName], [CustomerID] 
        FROM [Customers]">
    </asp:SqlDataSource>
    <!-- Add a filter to the data source control for the     -->
    <!-- DetailsView control to display the details of the   -->
    <!-- store selected in the GridView control.             -->
    <asp:SqlDataSource ID="Details" 
      ConnectionString=
        "<%$ ConnectionStrings:NorthwindConnectionString %>"
      runat="server" 
      SelectCommand="SELECT * FROM [Customers] 
        WHERE ([CustomerID] = @CustomerID)"
      DeleteCommand="DELETE FROM [Customers] 
        WHERE [CustomerID] = @CustomerID"
      InsertCommand="INSERT INTO [Customers] ([CustomerID], 
        [CompanyName], [ContactName], [ContactTitle], [Address], 
        [City], [Region], [PostalCode], [Country], [Phone], [Fax]) 
        VALUES (@CustomerID, @CompanyName, @ContactName, @ContactTitle, 
        @Address, @City, @Region, @PostalCode, @Country, @Phone, @Fax)"
      UpdateCommand="UPDATE [Customers] SET [CompanyName] = @CompanyName, 
        [ContactName] = @ContactName, [ContactTitle] = @ContactTitle, 
        [Address] = @Address, [City] = @City, [Region] = @Region, 
        [PostalCode] = @PostalCode, [Country] = @Country, 
        [Phone] = @Phone, [Fax] = @Fax 
        WHERE [CustomerID] = @CustomerID">
      <SelectParameters>
        <asp:ControlParameter ControlID="CustomersView" 
          Name="CustomerID" PropertyName="SelectedValue"
          Type="String" />
      </SelectParameters>
      <DeleteParameters>
        <asp:Parameter Name="CustomerID" Type="String" />
      </DeleteParameters>
      <UpdateParameters>
        <asp:Parameter Name="CompanyName" Type="String" />
        <asp:Parameter Name="ContactName" Type="String" />
        <asp:Parameter Name="ContactTitle" Type="String" />
        <asp:Parameter Name="Address" Type="String" />
        <asp:Parameter Name="City" Type="String" />
        <asp:Parameter Name="Region" Type="String" />
        <asp:Parameter Name="PostalCode" Type="String" />
        <asp:Parameter Name="Country" Type="String" />
        <asp:Parameter Name="Phone" Type="String" />
        <asp:Parameter Name="Fax" Type="String" />
        <asp:Parameter Name="CustomerID" Type="String" />
      </UpdateParameters>
      <InsertParameters>
        <asp:Parameter Name="CustomerID" Type="String" />
        <asp:Parameter Name="CompanyName" Type="String" />
        <asp:Parameter Name="ContactName" Type="String" />
        <asp:Parameter Name="ContactTitle" Type="String" />
        <asp:Parameter Name="Address" Type="String" />
        <asp:Parameter Name="City" Type="String" />
        <asp:Parameter Name="Region" Type="String" />
        <asp:Parameter Name="PostalCode" Type="String" />
        <asp:Parameter Name="Country" Type="String" />
        <asp:Parameter Name="Phone" Type="String" />
        <asp:Parameter Name="Fax" Type="String" />
      </InsertParameters>
    </asp:SqlDataSource>
  </form>
</body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
  Sub CustomerDetail_ItemInserted(ByVal sender As Object, _
    ByVal e As DetailsViewInsertedEventArgs)
    ' Refresh the GridView control after a new record is inserted in 
    ' the DetailsView control.
    CustomersView.DataBind()
  End Sub
  
  Sub CustomerDetail_ItemInserting(ByVal sender As Object, _
    ByVal e As DetailsViewInsertEventArgs)
    ' Iterate though the values entered by the user and HTML encode 
    ' the values. This helps prevent malicious values from being 
    ' stored in the data source.
    For i As Integer = 0 To e.Values.Count - 1
      If e.Values(i) IsNot Nothing Then
        e.Values(i) = Server.HtmlEncode(e.Values(i).ToString())
      End If
    Next
  End Sub
  
  Sub CustomerDetail_ItemUpdated(ByVal sender As Object, _
    ByVal e As DetailsViewUpdatedEventArgs)
    ' Refresh the GridView control after a new record is updated 
    ' in the DetailsView control.
    CustomersView.DataBind()
  End Sub
  
  Sub CustomerDetail_ItemUpdating(ByVal sender As Object, _
    ByVal e As DetailsViewUpdateEventArgs)
    ' Iterate though the values entered by the user and HTML encode 
    ' the values. This helps prevent malicious values from being 
    ' stored in the data source.
    For i As Integer = 0 To e.NewValues.Count - 1
      If e.NewValues(i) IsNot Nothing Then
        e.NewValues(i) = Server.HtmlEncode(e.NewValues(i).ToString())
      End If
    Next
  End Sub
  
  Sub CustomerDetail_ItemDeleted(ByVal sender As Object, _
    ByVal e As DetailsViewDeletedEventArgs)
    ' Refresh the GridView control after a new record is updated 
    ' in the DetailsView control.
    CustomersView.DataBind()
  End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>DetailsView Example</title>
</head>
<body>
  <form id="Form1" runat="server">
    <h3>DetailsView Example</h3>
    <table cellspacing="10">
      <tr>
        <td>
          <!-- Use a GridView control in combination with      -->
          <!-- a DetailsView control to display master-detail  -->
          <!-- information. When the user selects a store from -->
          <!-- GridView control, the customers's detailed      -->
          <!-- information is displayed in the DetailsView     -->
          <!-- control.                                        -->
          <asp:GridView ID="CustomersView" DataSourceID="Customers" 
            AutoGenerateColumns="False"
            DataKeyNames="CustomerID" runat="server">
            <HeaderStyle BackColor="Blue" ForeColor="White" />
            <Columns>
              <asp:CommandField ShowSelectButton="True" />
              <asp:BoundField DataField="ContactName" 
                HeaderText="ContactName" />
              <asp:BoundField DataField="CompanyName" 
                HeaderText="CompanyName" />
            </Columns>
          </asp:GridView>
        </td>
        <td valign="top">
          <asp:DetailsView ID="CustomerDetail" DataSourceID="Details" 
            AutoGenerateRows="false"
            AutoGenerateInsertButton="true" 
            AutoGenerateEditButton="true" 
            AutoGenerateDeleteButton="true"
            EmptyDataText="No records." 
            DataKeyNames="CustomerID" GridLines="Both" 
            OnItemInserted="CustomerDetail_ItemInserted"
            OnItemInserting="CustomerDetail_ItemInserting" 
            OnItemUpdated="CustomerDetail_ItemUpdated"
            OnItemUpdating="CustomerDetail_ItemUpdating" 
            OnItemDeleted="CustomerDetail_ItemDeleted"
            runat="server">
            <HeaderStyle BackColor="Navy" ForeColor="White" />
            <RowStyle BackColor="White" />
            <AlternatingRowStyle BackColor="LightGray" />
            <EditRowStyle BackColor="LightCyan" />
            <Fields>
              <asp:BoundField DataField="CustomerID" HeaderText="CustomerID" 
                ReadOnly="True" />
              <asp:BoundField DataField="ContactName" HeaderText="ContactName" />
              <asp:BoundField DataField="ContactTitle" HeaderText="ContactTitle" />
              <asp:BoundField DataField="CompanyName" HeaderText="CompanyName" />
              <asp:BoundField DataField="Address" HeaderText="Address" />
              <asp:BoundField DataField="City" HeaderText="City" />
              <asp:BoundField DataField="Region" HeaderText="Region" />
              <asp:BoundField DataField="PostalCode" HeaderText="PostalCode" />
              <asp:BoundField DataField="Country" HeaderText="Country" />
              <asp:BoundField DataField="Phone" HeaderText="Phone" />
              <asp:BoundField DataField="Fax" HeaderText="Fax" />
            </Fields>
          </asp:DetailsView>
        </td>
      </tr>
    </table>
    <!-- This example uses Microsoft SQL Server and connects -->
    <!-- to the Northwind sample database.                   -->
    <!-- It is strongly recommended that each data-bound     -->
    <!-- control uses a separate data source control.        -->
    <asp:SqlDataSource ID="Customers" runat="server" 
      ConnectionString=
        "<%$ ConnectionStrings:NorthwindConnectionString %>"
      SelectCommand="SELECT [CompanyName], [ContactName], [CustomerID] 
        FROM [Customers]">
    </asp:SqlDataSource>
    <!-- Add a filter to the data source control for the     -->
    <!-- DetailsView control to display the details of the   -->
    <!-- store selected in the GridView control.             -->
    <asp:SqlDataSource ID="Details" 
      ConnectionString=
        "<%$ ConnectionStrings:NorthwindConnectionString %>"
      runat="server" 
      SelectCommand="SELECT * FROM [Customers] 
        WHERE ([CustomerID] = @CustomerID)"
      DeleteCommand="DELETE FROM [Customers] 
        WHERE [CustomerID] = @CustomerID"
      InsertCommand="INSERT INTO [Customers] ([CustomerID], 
        [CompanyName], [ContactName], [ContactTitle], [Address], 
        [City], [Region], [PostalCode], [Country], [Phone], [Fax]) 
        VALUES (@CustomerID, @CompanyName, @ContactName, 
        @ContactTitle, @Address, @City, @Region, @PostalCode, 
        @Country, @Phone, @Fax)"
      UpdateCommand="UPDATE [Customers] SET 
        [CompanyName] = @CompanyName, 
        [ContactName] = @ContactName, [ContactTitle] = @ContactTitle, 
        [Address] = @Address, [City] = @City, [Region] = @Region, 
        [PostalCode] = @PostalCode, [Country] = @Country, 
        [Phone] = @Phone, [Fax] = @Fax 
        WHERE [CustomerID] = @CustomerID">
      <SelectParameters>
        <asp:ControlParameter ControlID="CustomersView" 
          Name="CustomerID" PropertyName="SelectedValue"
          Type="String" />
      </SelectParameters>
      <DeleteParameters>
        <asp:Parameter Name="CustomerID" Type="String" />
      </DeleteParameters>
      <UpdateParameters>
        <asp:Parameter Name="CompanyName" Type="String" />
        <asp:Parameter Name="ContactName" Type="String" />
        <asp:Parameter Name="ContactTitle" Type="String" />
        <asp:Parameter Name="Address" Type="String" />
        <asp:Parameter Name="City" Type="String" />
        <asp:Parameter Name="Region" Type="String" />
        <asp:Parameter Name="PostalCode" Type="String" />
        <asp:Parameter Name="Country" Type="String" />
        <asp:Parameter Name="Phone" Type="String" />
        <asp:Parameter Name="Fax" Type="String" />
        <asp:Parameter Name="CustomerID" Type="String" />
      </UpdateParameters>
      <InsertParameters>
        <asp:Parameter Name="CustomerID" Type="String" />
        <asp:Parameter Name="CompanyName" Type="String" />
        <asp:Parameter Name="ContactName" Type="String" />
        <asp:Parameter Name="ContactTitle" Type="String" />
        <asp:Parameter Name="Address" Type="String" />
        <asp:Parameter Name="City" Type="String" />
        <asp:Parameter Name="Region" Type="String" />
        <asp:Parameter Name="PostalCode" Type="String" />
        <asp:Parameter Name="Country" Type="String" />
        <asp:Parameter Name="Phone" Type="String" />
        <asp:Parameter Name="Fax" Type="String" />
      </InsertParameters>
    </asp:SqlDataSource>
  </form>
</body>
</html>

Nell'esempio di codice seguente viene illustrato come aggiungere in modo dichiarativo i campi di riga al DetailsView controllo.

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
  <form id="Form1" runat="server">
    <table cellspacing="10">
      <tr>
        <td>
          <!-- Use a GridView control in combination with      -->
          <!-- a DetailsView control to display master-detail  -->
          <!-- information. When the user selects a store from -->
          <!-- GridView control, the store's detailed          -->
          <!-- information is displayed in the DetailsView     -->
          <!-- control.                                        -->
          <asp:GridView ID="GridView1" runat="server" 
            DataSourceID="Customers" AutoGenerateColumns="False" 
            DataKeyNames="CustomerID">
            <Columns>
              <asp:CommandField ShowSelectButton="True" />
              <asp:BoundField DataField="ContactName" HeaderText="ContactName" />
              <asp:BoundField DataField="CompanyName" HeaderText="CompanyName" />
            </Columns>
          </asp:GridView>
        </td>
        <td valign="top">
          <asp:DetailsView ID="DetailsView" runat="server"
            DataSourceID="Details" AutoGenerateRows="false"
            DataKeyNames="CustomerID" >
            <HeaderStyle BackColor="Navy" ForeColor="White" />
            <Fields>
              <asp:BoundField DataField="CustomerID" HeaderText="CustomerID" 
                ReadOnly="True" />
              <asp:BoundField DataField="ContactName" HeaderText="ContactName" />
              <asp:BoundField DataField="ContactTitle" HeaderText="ContactTitle" />
              <asp:BoundField DataField="CompanyName" HeaderText="CompanyName" />
              <asp:BoundField DataField="City" HeaderText="City" />
              <asp:BoundField DataField="Region" HeaderText="Region" />
              <asp:BoundField DataField="PostalCode" HeaderText="PostalCode" />
              <asp:BoundField DataField="Country" HeaderText="Country" />
            </Fields>
          </asp:DetailsView>
        </td>
      </tr>
    </table>
    <!-- This example uses Microsoft SQL Server and connects -->
    <!-- to the Northwind sample database.                        -->
    <!-- It is strongly recommended that each data-bound     -->
    <!-- control uses a separate data source control.        -->
    <asp:SqlDataSource ID="Customers" runat="server" 
      ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
      SelectCommand="SELECT [CompanyName], [ContactName], [CustomerID] FROM [Customers]">
    </asp:SqlDataSource>
    <!-- Add a filter to the data source control for the     -->
    <!-- DetailsView control to display the details of the   -->
    <!-- store selected in the GridView control.             -->
    <asp:SqlDataSource ID="Details" runat="server" 
      ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
      SelectCommand="SELECT * FROM [Customers] WHERE ([CustomerID] = @CustomerID)">
      <SelectParameters>
        <asp:ControlParameter ControlID="GridView1" Name="CustomerID" 
          PropertyName="SelectedValue"
          Type="String" />
      </SelectParameters>
    </asp:SqlDataSource>
  </form>
</body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
  <form id="Form1" runat="server">
    <table cellspacing="10">
      <tr>
        <td>
          <!-- Use a GridView control in combination with      -->
          <!-- a DetailsView control to display master-detail  -->
          <!-- information. When the user selects a store from -->
          <!-- GridView control, the store's detailed          -->
          <!-- information is displayed in the DetailsView     -->
          <!-- control.                                        -->
          <asp:GridView ID="GridView1" runat="server" 
            DataSourceID="Customers" AutoGenerateColumns="False" 
            DataKeyNames="CustomerID">
            <Columns>
              <asp:CommandField ShowSelectButton="True" />
              <asp:BoundField DataField="ContactName" HeaderText="ContactName" />
              <asp:BoundField DataField="CompanyName" HeaderText="CompanyName" />
            </Columns>
          </asp:GridView>
        </td>
        <td valign="top">
          <asp:DetailsView ID="DetailsView" runat="server"
            DataSourceID="Details" AutoGenerateRows="false"
            DataKeyNames="CustomerID" >
            <HeaderStyle BackColor="Navy" ForeColor="White" />
            <Fields>
              <asp:BoundField DataField="CustomerID" HeaderText="CustomerID" 
                ReadOnly="True" />
              <asp:BoundField DataField="ContactName" HeaderText="ContactName" />
              <asp:BoundField DataField="ContactTitle" HeaderText="ContactTitle" />
              <asp:BoundField DataField="CompanyName" HeaderText="CompanyName" />
              <asp:BoundField DataField="City" HeaderText="City" />
              <asp:BoundField DataField="Region" HeaderText="Region" />
              <asp:BoundField DataField="PostalCode" HeaderText="PostalCode" />
              <asp:BoundField DataField="Country" HeaderText="Country" />
            </Fields>
          </asp:DetailsView>
        </td>
      </tr>
    </table>
    <!-- This example uses Microsoft SQL Server and connects -->
    <!-- to the Northwind sample database.                        -->
    <!-- It is strongly recommended that each data-bound     -->
    <!-- control uses a separate data source control.        -->
    <asp:SqlDataSource ID="Customers" runat="server" 
      ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
      SelectCommand="SELECT [CompanyName], [ContactName], [CustomerID] FROM [Customers]">
    </asp:SqlDataSource>
    <!-- Add a filter to the data source control for the     -->
    <!-- DetailsView control to display the details of the   -->
    <!-- store selected in the GridView control.             -->
    <asp:SqlDataSource ID="Details" runat="server" 
      ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
      SelectCommand="SELECT * FROM [Customers] WHERE ([CustomerID] = @CustomerID)">
      <SelectParameters>
        <asp:ControlParameter ControlID="GridView1" Name="CustomerID" 
          PropertyName="SelectedValue"
          Type="String" />
      </SelectParameters>
    </asp:SqlDataSource>
  </form>
</body>
</html>

Commenti

In questo argomento

Introduzione

Il DetailsView controllo viene usato per visualizzare un singolo record da un'origine dati in una tabella, in cui ogni campo del record viene visualizzato in una riga della tabella. Può essere usato in combinazione con un GridView controllo per scenari master-dettagli. Il DetailsView controllo supporta le funzionalità seguenti:

  • Associazione ai controlli dell'origine dati, ad esempio SqlDataSource.

  • Funzionalità di inserimento predefinite.

  • Aggiornamento predefinito ed eliminazione di funzionalità.

  • Funzionalità di paging predefinite.

  • Accesso a livello di codice al DetailsView modello a oggetti per impostare dinamicamente le proprietà, gestire gli eventi e così via.

  • Aspetto personalizzabile tramite temi e stili.

Campi di riga

Ogni riga di dati nel DetailsView controllo viene creata dichiarando un controllo campo. Diversi tipi di campo di riga determinano il comportamento delle righe nel controllo. I controlli campo derivano da DataControlField. Nella tabella seguente sono elencati i diversi tipi di campo di riga che possono essere usati.

Tipo di campo colonna Descrizione
BoundField Visualizza il valore di un campo in un'origine dati come testo.
ButtonField Visualizza un pulsante di comando nel DetailsView controllo. In questo modo è possibile visualizzare una riga con un controllo pulsante personalizzato, ad esempio un pulsante Aggiungi o Rimuovi.
CheckBoxField Visualizza una casella di controllo nel DetailsView controllo. Questo tipo di campo di riga viene comunemente usato per visualizzare i campi con un valore booleano.
CommandField Visualizza i pulsanti di comando predefiniti per eseguire operazioni di modifica, inserimento o eliminazione nel DetailsView controllo.
HyperLinkField Visualizza il valore di un campo in un'origine dati come collegamento ipertestuale. Questo tipo di campo di riga consente di associare un secondo campo all'URL del collegamento ipertestuale.
ImageField Visualizza un'immagine nel DetailsView controllo.
TemplateField Visualizza il contenuto definito dall'utente per una riga nel DetailsView controllo in base a un modello specificato. Questo tipo di campo di riga consente di creare un campo di riga personalizzato.

Per impostazione predefinita, la AutoGenerateRows proprietà è impostata su true, che genera automaticamente un oggetto campo riga associato per ogni campo di un tipo associabile nell'origine dati. I tipi associabili validi sono String, , DateTimeDecimal, Guide il set di tipi primitivi. Ogni campo viene quindi visualizzato in una riga come testo, nell'ordine in cui ogni campo viene visualizzato nell'origine dati.

La generazione automatica delle righe offre un modo rapido e semplice per visualizzare ogni campo nel record. Tuttavia, per usare le funzionalità avanzate del DetailsView controllo, è necessario dichiarare in modo esplicito i campi di riga da includere nel DetailsView controllo. Per dichiarare i campi della riga, impostare prima la AutoGenerateRows proprietà su false. Aggiungere quindi tag di apertura e chiusura <Fields> tra i tag di apertura e chiusura del DetailsView controllo. Infine, elencare i campi di riga da includere tra i tag di apertura e chiusura <Fields> . I campi di riga specificati vengono aggiunti alla raccolta nell'ordine Fields elencato. La Fields raccolta consente di gestire a livello di codice i campi di riga nel DetailsView controllo.

Nota

I campi di riga generati automaticamente non vengono aggiunti alla Fields raccolta.

Nota

I campi di riga dichiarati in modo esplicito possono essere visualizzati in combinazione con campi di riga generati automaticamente. Quando vengono usati entrambi, i campi di riga dichiarati in modo esplicito vengono visualizzati prima, seguiti dai campi di riga generati automaticamente.

Associazione ai dati

Il DetailsView controllo può essere associato a un controllo origine dati (ad esempio il controllo o il SqlDataSource controllo) o ObjectDataSource a qualsiasi raccolta di origine dati che implementa l'interfaccia System.Collections.IEnumerable , ad esempio System.Data.DataView, System.Collections.ArrayList, System.Collections.Generic.List<T>o altri tipi di raccolta. Usare uno dei metodi seguenti per associare il DetailsView controllo al tipo di origine dati appropriato:

  • Per eseguire il binding a un controllo origine dati, impostare la DataSourceID proprietà del controllo sul ID valore del DetailsView controllo origine dati. Il DetailsView controllo associa automaticamente al controllo origine dati specificato. Si tratta del metodo preferito da associare ai dati.

  • Per eseguire il binding a un'origine dati che implementa l'interfaccia System.Collections.IEnumerable , impostare a livello di codice la DataSource proprietà del DetailsView controllo sull'origine dati e quindi chiamare il DataBind metodo.

Per altre informazioni sul data binding, vedere Associazione ai database.

Sicurezza

Questo controllo può essere usato per visualizzare l'input utente, che potrebbe includere script client dannosi. Controllare tutte le informazioni inviate da un client per script eseguibili, istruzioni SQL o altro codice prima di visualizzarlo nell'applicazione. ASP.NET fornisce una funzionalità di convalida della richiesta di input per bloccare script e HTML nell'input utente. Per altre informazioni, vedere Cenni preliminari sugli attacchi tramite script. I controlli server di convalida vengono forniti anche per valutare l'input utente. Per altre informazioni, vedere Sintassi del controllo server di convalida.

Operazioni dati

Il DetailsView controllo offre funzionalità predefinite che consentono all'utente di aggiornare, eliminare, inserire e pagina tramite elementi nel controllo. Quando il controllo è associato a un controllo origine dati, il DetailsView DetailsView controllo può sfruttare le funzionalità del controllo origine dati e fornire l'aggiornamento automatico, l'eliminazione, l'inserimento e la funzionalità di paging.

Nota

Il DetailsView controllo può fornire supporto per le operazioni di aggiornamento, eliminazione, inserimento e paging con altri tipi di origini dati. Tuttavia, è necessario fornire l'implementazione per queste operazioni in un gestore eventi appropriato. Per altre informazioni, vedere ItemDeleting, ItemInserting e ItemUpdating.

Il DetailsView controllo può aggiungere automaticamente un campo di riga con un CommandField pulsante Modifica, Elimina o Nuovo impostando rispettivamente le AutoGenerateEditButtonproprietà true, AutoGenerateDeleteButtono AutoGenerateInsertButton su . A differenza del pulsante Elimina (che elimina immediatamente il record selezionato), quando viene fatto clic sul pulsante Modifica o Nuovo, il DetailsView controllo passa rispettivamente alla modalità modifica o inserimento. In modalità di modifica, il pulsante Modifica viene sostituito con un pulsante Aggiorna e Annulla. I controlli di input appropriati per il tipo di dati del campo (ad esempio un TextBox controllo o CheckBox ) vengono visualizzati con il valore di un campo da modificare. Facendo clic sul pulsante Aggiorna viene aggiornato il record nell'origine dati, facendo clic sul pulsante Annulla vengono abbandonate le modifiche. Analogamente, in modalità di inserimento, il pulsante Nuovo viene sostituito con un pulsante Inserisci e un pulsante Annulla e i controlli di input vuoti vengono visualizzati per l'utente per immettere i valori per il nuovo record.

Nota

È anche possibile definire manualmente i pulsanti di comando update, delete e insert in un ButtonFieldcampo di riga , CommandFieldo TemplateField . Il DetailsView controllo riconosce i pulsanti con la CommandName proprietà impostata su "Edit", "Update", "Delete", "New", "Insert" o "Cancel". Tuttavia, è comunque necessario fornire la funzionalità. Per altre informazioni, vedere ItemDeleting, ItemInserting e ItemUpdating.

Il DetailsView controllo fornisce una funzionalità di paging che consente all'utente di passare ad altri record nell'origine dati. Se abilitato, i controlli di spostamento della pagina vengono visualizzati in una riga del pager. Per abilitare il paging, impostare la AllowPaging proprietà su true. La riga del pager può essere personalizzata usando le PagerStyle proprietà e PagerSettings .

Personalizzazione dell'interfaccia utente

È possibile personalizzare l'aspetto DetailsView del controllo impostando le proprietà dello stile per parti diverse del controllo. Nella tabella seguente sono elencate le proprietà di stile che è possibile impostare.

Proprietà Style Descrizione
AlternatingRowStyle Impostazioni di stile per le righe di dati alternate nel DetailsView controllo. Quando questa proprietà è impostata, le righe di dati vengono visualizzate in bande, alternando tra le impostazioni e le RowStyle AlternatingRowStyle impostazioni.
CommandRowStyle Impostazioni di stile per la riga contenente i pulsanti di comando predefiniti.
EditRowStyle Impostazioni di stile per le righe di dati quando il DetailsView controllo è in modalità di modifica.
EmptyDataRowStyle Impostazioni di stile per la riga di dati vuota visualizzata nel controllo quando l'origine DetailsView dati non contiene record.
FooterStyle Impostazioni di stile per la riga piè di pagina.
HeaderStyle Impostazioni di stile per la riga di intestazione.
InsertRowStyle Impostazioni di stile per le righe di dati quando il DetailsView controllo è in modalità di inserimento.
PagerStyle Impostazioni di stile per la riga del pager.
RowStyle Impostazioni di stile per le righe di dati nel DetailsView controllo. Quando la AlternatingRowStyle proprietà è impostata anche, le righe di dati vengono visualizzate alternando tra le impostazioni e le RowStyle AlternatingRowStyle impostazioni.
FieldHeaderStyle Impostazioni di stile per la colonna di intestazione.

Eventi

Il DetailsView controllo fornisce diversi eventi che è possibile programmare. Ciò consente di eseguire una routine personalizzata ogni volta che si verifica un evento. Nella tabella seguente sono elencati gli eventi supportati dal DetailsView controllo. Il DetailsView controllo eredita anche questi eventi dalle relative classi di base: DataBinding, DataBoundLoadPreRenderDisposedInite .Render

Event Descrizione
ItemCommand Si verifica quando viene fatto clic su un pulsante nel controllo DetailsView.
ItemCreated Si verifica dopo la creazione di tutti gli DetailsViewRow oggetti nel DetailsView controllo. Questo evento viene spesso usato per modificare i valori di un record prima che venga visualizzato.
ItemDeleted Si verifica quando viene fatto clic su un pulsante Elimina, ma dopo che il controllo elimina il DetailsView record dall'origine dati. Questo evento viene spesso usato per controllare i risultati dell'operazione di eliminazione.
ItemDeleting Si verifica quando viene fatto clic su un pulsante Elimina, ma prima che il controllo elimini il DetailsView record dall'origine dati. Questo evento viene spesso usato per annullare l'operazione di eliminazione.
ItemInserted Si verifica quando viene fatto clic su un pulsante Inserisci, ma dopo che il controllo inserisce il DetailsView record. Questo evento viene spesso usato per controllare i risultati dell'operazione di inserimento.
ItemInserting Si verifica quando viene fatto clic su un pulsante Inserisci, ma prima che il controllo inserisca il DetailsView record. Questo evento viene spesso usato per annullare l'operazione di inserimento.
ItemUpdated Si verifica quando viene fatto clic su un pulsante Aggiorna, ma dopo che il controllo aggiorna la DetailsView riga. Questo evento viene spesso usato per controllare i risultati dell'operazione di aggiornamento.
ItemUpdating Si verifica quando viene fatto clic su un pulsante Aggiorna, ma prima che il controllo aggiorni il DetailsView record. Questo evento viene spesso usato per annullare l'operazione di aggiornamento.
ModeChanged Si verifica dopo le modalità di modifica del DetailsView controllo (modifica, inserimento o modalità di sola lettura). Questo evento viene spesso usato per eseguire un'attività quando il controllo modifica le DetailsView modalità.
ModeChanging Si verifica prima delle modalità di modifica del DetailsView controllo (modifica, inserimento o modalità di sola lettura). Questo evento viene spesso usato per annullare una modifica della modalità.
PageIndexChanged Si verifica quando viene fatto clic su uno dei pulsanti di spostamento, ma dopo che il controllo DetailsView ha gestito l'operazione di spostamento. Questo evento viene comunemente usato quando è necessario eseguire un'attività dopo che l'utente passa a un record diverso nel controllo.
PageIndexChanging Si verifica quando viene fatto clic su uno dei pulsanti di spostamento, ma prima che il controllo DetailsView gestisca l'operazione di spostamento. Questo evento viene spesso usato per annullare l'operazione di paging.

Accessibilità

Per informazioni su come configurare questo controllo in modo che generi markup conforme agli standard di accessibilità, vedere Accessibilità in Visual Studio e ASP.NET e controlli ASP.NET e accessibilità.

Sintassi dichiarativa

<asp:DetailsView
    AccessKey="string"
    AllowPaging="True|False"
    AutoGenerateDeleteButton="True|False"
    AutoGenerateEditButton="True|False"
    AutoGenerateInsertButton="True|False"
    AutoGenerateRows="True|False"
    BackColor="color name|#dddddd"
    BackImageUrl="uri"
    BorderColor="color name|#dddddd"
    BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|
        Inset|Outset"
    BorderWidth="size"
    Caption="string"
    CaptionAlign="NotSet|Top|Bottom|Left|Right"
    CellPadding="integer"
    CellSpacing="integer"
    CssClass="string"
    DataKeyNames="string"
    DataMember="string"
    DataSource="string"
    DataSourceID="string"
    DefaultMode="ReadOnly|Edit|Insert"
    EmptyDataText="string"
    Enabled="True|False"
    EnablePagingCallbacks="True|False"
    EnableTheming="True|False"
    EnableViewState="True|False"
    Font-Bold="True|False"
    Font-Italic="True|False"
    Font-Names="string"
    Font-Overline="True|False"
    Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
        Large|X-Large|XX-Large"
    Font-Strikeout="True|False"
    Font-Underline="True|False"
    FooterText="string"
    ForeColor="color name|#dddddd"
    GridLines="None|Horizontal|Vertical|Both"
    HeaderText="string"
    Height="size"
    HorizontalAlign="NotSet|Left|Center|Right|Justify"
    ID="string"
    OnDataBinding="DataBinding event handler"
    OnDataBound="DataBound event handler"
    OnDisposed="Disposed event handler"
    OnInit="Init event handler"
    OnItemCommand="ItemCommand event handler"
    OnItemCreated="ItemCreated event handler"
    OnItemDeleted="ItemDeleted event handler"
    OnItemDeleting="ItemDeleting event handler"
    OnItemInserted="ItemInserted event handler"
    OnItemInserting="ItemInserting event handler"
    OnItemUpdated="ItemUpdated event handler"
    OnItemUpdating="ItemUpdating event handler"
    OnLoad="Load event handler"
    OnModeChanged="ModeChanged event handler"
    OnModeChanging="ModeChanging event handler"
    OnPageIndexChanged="PageIndexChanged event handler"
    OnPageIndexChanging="PageIndexChanging event handler"
    OnPreRender="PreRender event handler"
    OnUnload="Unload event handler"
    PageIndex="integer"
    PagerSettings-FirstPageImageUrl="uri"
    PagerSettings-FirstPageText="string"
    PagerSettings-LastPageImageUrl="uri"
    PagerSettings-LastPageText="string"
    PagerSettings-Mode="NextPrevious|Numeric|NextPreviousFirstLast|NumericFirstLast"
    PagerSettings-NextPageImageUrl="uri"
    PagerSettings-NextPageText="string"
    PagerSettings-PageButtonCount="integer"
    PagerSettings-Position="Bottom|Top|TopAndBottom"
    PagerSettings-PreviousPageImageUrl="uri"
    PagerSettings-PreviousPageText="string"
    PagerSettings-Visible="True|False"
    runat="server"
    SkinID="string"
    Style="string"
    TabIndex="integer"
    ToolTip="string"
    Visible="True|False"
    Width="size"
>
        <AlternatingRowStyle />
        <CommandRowStyle />
        <EditRowStyle />
        <EmptyDataRowStyle />
        <EmptyDataTemplate>
            <!-- child controls -->
        </EmptyDataTemplate>
        <FieldHeaderStyle />
        <Fields>
                <asp:BoundField
                    AccessibleHeaderText="string"
                    ApplyFormatInEditMode="True|False"
                    ConvertEmptyStringToNull="True|False"
                    DataField="string"
                    DataFormatString="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    HtmlEncode="True|False"
                    InsertVisible="True|False"
                    NullDisplayText="string"
                    ReadOnly="True|False"
                    ShowHeader="True|False"
                    SortExpression="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:BoundField>
                <asp:ButtonField
                    AccessibleHeaderText="string"
                    ButtonType="Button|Image|Link"
                    CausesValidation="True|False"
                    CommandName="string"
                    DataTextField="string"
                    DataTextFormatString="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    ImageUrl="uri"
                    InsertVisible="True|False"
                    ShowHeader="True|False"
                    SortExpression="string"
                    Text="string"
                    ValidationGroup="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:ButtonField>
                <asp:CheckBoxField
                    AccessibleHeaderText="string"
                    DataField="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    InsertVisible="True|False"
                    ReadOnly="True|False"
                    ShowHeader="True|False"
                    SortExpression="string"
                    Text="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:CheckBoxField>
                <asp:CommandField
                    AccessibleHeaderText="string"
                    ButtonType="Button|Image|Link"
                    CancelImageUrl="uri"
                    CancelText="string"
                    CausesValidation="True|False"
                    DeleteImageUrl="uri"
                    DeleteText="string"
                    EditImageUrl="uri"
                    EditText="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    InsertImageUrl="uri"
                    InsertText="string"
                    InsertVisible="True|False"
                    NewImageUrl="uri"
                    NewText="string"
                    SelectImageUrl="uri"
                    SelectText="string"
                    ShowCancelButton="True|False"
                    ShowDeleteButton="True|False"
                    ShowEditButton="True|False"
                    ShowHeader="True|False"
                    ShowInsertButton="True|False"
                    ShowSelectButton="True|False"
                    SortExpression="string"
                    UpdateImageUrl="uri"
                    UpdateText="string"
                    ValidationGroup="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:CommandField>
                <asp:DynamicField
                    AccessibleHeaderText="string"
                    ApplyFormatInEditMode="True|False"
                    ConvertEmptyStringToNull="True|False"
                    DataField="string"
                    DataFormatString="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    HtmlEncode="True|False"
                    InsertVisible="True|False"
                    NullDisplayText="string"
                    ShowHeader="True|False"
                    UIHint="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:DynamicField>
                <asp:HyperLinkField
                    AccessibleHeaderText="string"
                    DataNavigateUrlFields="string"
                    DataNavigateUrlFormatString="string"
                    DataTextField="string"
                    DataTextFormatString="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    InsertVisible="True|False"
                    NavigateUrl="uri"
                    ShowHeader="True|False"
                    SortExpression="string"
                    Target="string|_blank|_parent|_search|_self|_top"
                    Text="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:HyperLinkField>
                <asp:ImageField
                    AccessibleHeaderText="string"
                    AlternateText="string"
                    ConvertEmptyStringToNull="True|False"
                    DataAlternateTextField="string"
                    DataAlternateTextFormatString="string"
                    DataImageUrlField="string"
                    DataImageUrlFormatString="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    InsertVisible="True|False"
                    NullDisplayText="string"
                    NullImageUrl="uri"
                    ReadOnly="True|False"
                    ShowHeader="True|False"
                    SortExpression="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:ImageField>
                <asp:TemplateField
                    AccessibleHeaderText="string"
                    ConvertEmptyStringToNull="True|False"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    InsertVisible="True|False"
                    ShowHeader="True|False"
                    SortExpression="string"
                    Visible="True|False"
>
                            <ControlStyle />
                            <FooterStyle />
                            <HeaderStyle />
                            <ItemStyle />
                        <AlternatingItemTemplate>
                            <!-- child controls -->
                        </AlternatingItemTemplate>
                        <EditItemTemplate>
                            <!-- child controls -->
                        </EditItemTemplate>
                        <FooterTemplate>
                            <!-- child controls -->
                        </FooterTemplate>
                        <HeaderTemplate>
                            <!-- child controls -->
                        </HeaderTemplate>
                        <InsertItemTemplate>
                            <!-- child controls -->
                        </InsertItemTemplate>
                        <ItemTemplate>
                            <!-- child controls -->
                        </ItemTemplate>
                </asp:TemplateField>
        </Fields>
        <FooterStyle />
        <FooterTemplate>
            <!-- child controls -->
        </FooterTemplate>
        <HeaderStyle />
        <HeaderTemplate>
            <!-- child controls -->
        </HeaderTemplate>
        <InsertRowStyle />
        <PagerSettings
            FirstPageImageUrl="uri"
            FirstPageText="string"
            LastPageImageUrl="uri"
            LastPageText="string"
            Mode="NextPrevious|Numeric|NextPreviousFirstLast|
                NumericFirstLast"
            NextPageImageUrl="uri"
            NextPageText="string"
            OnPropertyChanged="PropertyChanged event handler"
            PageButtonCount="integer"
            Position="Bottom|Top|TopAndBottom"
            PreviousPageImageUrl="uri"
            PreviousPageText="string"
            Visible="True|False"
        />
        <PagerStyle />
        <PagerTemplate>
            <!-- child controls -->
        </PagerTemplate>
        <RowStyle        />
</asp:DetailsView>

Costruttori

DetailsView()

Inizializza una nuova istanza della classe DetailsView.

Proprietà

AccessKey

Ottiene o imposta il tasto di scelta che consente di accedere rapidamente al controllo server Web.

(Ereditato da WebControl)
Adapter

Ottiene l'adattatore specifico del browser per il controllo.

(Ereditato da Control)
AllowPaging

Ottiene o imposta un valore che indica se la funzionalità di spostamento è abilitata.

AlternatingRowStyle

Ottiene un riferimento all'oggetto TableItemStyle che consente di impostare l'aspetto delle righe di dati alterne in un controllo DetailsView.

AppRelativeTemplateSourceDirectory

Ottiene o imposta la directory virtuale relativa all'applicazione dell'oggetto Page o UserControl contenente questo controllo.

(Ereditato da Control)
Attributes

Ottiene l'insieme di attributi arbitrari (solo per il rendering) che non corrispondono alle proprietà del controllo.

(Ereditato da WebControl)
AutoGenerateDeleteButton

Ottiene o imposta un valore che indica se in un controllo DetailsView viene visualizzato il controllo incorporato di eliminazione del record corrente.

AutoGenerateEditButton

Ottiene o imposta un valore che indica se in un controllo DetailsView vengono visualizzati i controlli incorporati di modifica del record corrente.

AutoGenerateInsertButton

Ottiene o imposta un valore che indica se in un controllo DetailsView vengono visualizzati i controlli incorporati di inserimento di un nuovo record.

AutoGenerateRows

Ottiene o imposta un valore che indica se i campi riga di ogni campo dell'origine dati vengono generati automaticamente e visualizzati in un controllo DetailsView.

BackColor

Ottiene o imposta il colore di sfondo del controllo server Web.

(Ereditato da WebControl)
BackImageUrl

Ottiene o imposta l'URL di un'immagine da visualizzare sullo sfondo di un controllo DetailsView.

BindingContainer

Ottiene il controllo contenente l'associazione dati del controllo corrente.

(Ereditato da Control)
BorderColor

Ottiene o imposta il colore del bordo del controllo Web.

(Ereditato da WebControl)
BorderStyle

Ottiene o imposta lo stile del bordo del controllo server Web.

(Ereditato da WebControl)
BorderWidth

Ottiene o imposta la larghezza del bordo del controllo server Web.

(Ereditato da WebControl)
BottomPagerRow

Ottiene un oggetto DetailsViewRow che rappresenta la riga di spostamento inferiore in un controllo DetailsView.

Caption

Ottiene o imposta il testo di cui eseguire il rendering in un elemento didascalia HTML in un controllo DetailsView. Questa proprietà viene fornita per rendere il controllo più accessibile agli utenti di dispositivi che assistono i disabili.

CaptionAlign

Ottiene o imposta la posizione orizzontale o verticale dell'elemento didascalia HTML in un controllo DetailsView. Questa proprietà viene fornita per rendere il controllo più accessibile agli utenti di dispositivi che assistono i disabili.

CellPadding

Ottiene o imposta la quantità di spazio tra il contenuto e il bordo di una cella.

CellSpacing

Ottiene o imposta la distanza tra le celle.

ChildControlsCreated

Ottiene un valore che indica se i controlli figli del controllo server sono stati creati.

(Ereditato da Control)
ClientID

Ottiene l'ID di controllo per il markup HTML generato da ASP.NET.

(Ereditato da Control)
ClientIDMode

Ottiene o imposta l'algoritmo utilizzato per generare il valore della proprietà ClientID.

(Ereditato da Control)
ClientIDSeparator

Ottiene un carattere che rappresenta il separatore utilizzato nella proprietà ClientID.

(Ereditato da Control)
CommandRowStyle

Ottiene un riferimento all'oggetto TableItemStyle che consente di impostare l'aspetto di una riga di comandi in un controllo DetailsView.

Context

Ottiene l'oggetto HttpContext associato al controllo server per la richiesta Web corrente.

(Ereditato da Control)
Controls

Ottiene un insieme di controlli figlio all'interno del controllo composito associato a dati.

(Ereditato da CompositeDataBoundControl)
ControlStyle

Ottiene lo stile del controllo server Web. Questa proprietà viene usata principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
ControlStyleCreated

Ottiene un valore che indica se è stato creato un oggetto Style per la proprietà ControlStyle. Questa proprietà viene utilizzata principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
CssClass

Ottiene o imposta la classe CSS (Cascading Style Sheet) di cui viene eseguito il rendering tramite il controllo server Web sul client.

(Ereditato da WebControl)
CurrentMode

Ottiene la modalità di immissione dati corrente del controllo DetailsView.

DataItem

Ottiene l'elemento di dati associato al controllo DetailsView.

DataItemContainer

Ottiene un riferimento al contenitore di denominazione se il contenitore di denominazione implementa IDataItemContainer.

(Ereditato da Control)
DataItemCount

Ottiene il numero di elementi presenti nell'origine dati sottostante.

DataItemIndex

Ottiene l'indice dell'elemento visualizzato in un controllo DetailsView dall'origine dati sottostante.

DataKey

Ottiene un oggetto DataKey che rappresenta la chiave primaria del record visualizzato.

DataKeyNames

Ottiene o imposta una matrice contenente i nomi dei campi chiave dell'origine dati.

DataKeysContainer

Ottiene un riferimento al contenitore di denominazione se il contenitore di denominazione implementa IDataKeysControl.

(Ereditato da Control)
DataMember

Ottiene o imposta il nome dell'elenco di dati a cui si associa il controllo con associazione a dati, nei casi in cui l'origine dati contenga più elenchi distinti di elementi di dati.

(Ereditato da DataBoundControl)
DataSource

Ottiene o imposta l'oggetto da cui il controllo con associazione a dati recupera il relativo elenco degli elementi di dati.

(Ereditato da BaseDataBoundControl)
DataSourceID

Ottiene o imposta l'ID del controllo da cui il controllo associato a dati recupera l'elenco di elementi di dati.

(Ereditato da DataBoundControl)
DataSourceObject

Ottiene un oggetto che implementa l'interfaccia IDataSource che fornisce l'accesso al contenuto dati dell'oggetto.

(Ereditato da DataBoundControl)
DefaultMode

Ottiene o imposta la modalità di immissione dati predefinita del controllo DetailsView.

DeleteMethod

Ottiene o imposta il nome del metodo sulla pagina che viene chiamata quando il controllo esegue un'operazione di eliminazione.

DeleteMethod

Ottiene o imposta il nome del metodo da chiamare per eliminare i dati.

(Ereditato da CompositeDataBoundControl)
DesignMode

Ottiene un valore che indica se un controllo viene utilizzato in un'area di progettazione.

(Ereditato da Control)
EditRowStyle

Ottiene un riferimento all'oggetto TableItemStyle che consente di impostare l'aspetto delle righe di dati quando un controllo DetailsView è in modalità di modifica.

EmptyDataRowStyle

Ottiene un riferimento all'oggetto TableItemStyle che consente di impostare l'aspetto della riga di dati vuota visualizzata quando l'origine dati associata a un controllo DetailsView non contiene record.

EmptyDataTemplate

Ottiene o imposta il contenuto definito dall'utente per la riga di dati vuota di cui viene eseguito il rendering quando un controllo DetailsView è associato a un'origine dati che non contiene record.

EmptyDataText

Ottiene o imposta il testo da visualizzare nella riga di dati vuota di cui viene eseguito il rendering quando un controllo DetailsView è associato a un'origine dati che non contiene record.

Enabled

Ottiene o imposta un valore che indica se il controllo server Web è abilitato.

(Ereditato da WebControl)
EnableModelValidation

Ottiene o imposta un valore che indica se la convalida del modello dati è abilitata.

EnablePagingCallbacks

Ottiene o imposta un valore che indica se vengono utilizzate funzioni di callback sul lato client per le operazioni di spostamento nel controllo DetailsView.

EnableTheming

Ottiene o imposta un valore che indica se al controllo vengono applicati i temi.

(Ereditato da WebControl)
EnableViewState

Ottiene o imposta un valore che indica se lo stato di visualizzazione del controllo server deve essere persistente e lo stato di visualizzazione dei controlli figlio contenuti, per il client richiedente.

(Ereditato da Control)
Events

Ottiene un elenco dei delegati del gestore eventi per il controllo. Questa proprietà è di sola lettura.

(Ereditato da Control)
FieldHeaderStyle

Ottiene un riferimento all'oggetto TableItemStyle che consente di impostare l'aspetto della colonna dell'intestazione in un controllo DetailsView.

Fields

Ottiene un insieme di oggetti DataControlField che rappresentano i campi riga dichiarati in modo esplicito in un controllo DetailsView.

Font

Ottiene le proprietà del carattere associate al controllo server Web.

(Ereditato da WebControl)
FooterRow

Ottiene un oggetto DetailsViewRow che rappresenta la riga del piè di pagina in un controllo DetailsView.

FooterStyle

Ottiene un riferimento all'oggetto TableItemStyle che consente di impostare l'aspetto della riga del piè di pagina in un controllo DetailsView.

FooterTemplate

Ottiene o imposta il contenuto definito dall'utente per la riga del piè di pagina in un controllo DetailsView.

FooterText

Ottiene o imposta il testo da visualizzare nella riga del piè di pagina di un controllo DetailsView.

ForeColor

Ottiene o imposta il colore di primo piano, in genere il colore del testo, del controllo server Web.

(Ereditato da WebControl)
GridLines

Ottiene o imposta lo stile delle linee della griglia di un controllo DetailsView.

HasAttributes

Ottiene un valore che indica se sono impostati attributi per il controllo.

(Ereditato da WebControl)
HasChildViewState

Ottiene un valore che indica se per i controlli figlio del controllo server corrente esistono impostazioni dello stato di visualizzazione salvate.

(Ereditato da Control)
HeaderRow

Ottiene un oggetto DetailsViewRow che rappresenta la riga dell'intestazione in un controllo DetailsView.

HeaderStyle

Ottiene un riferimento all'oggetto TableItemStyle che consente di impostare l'aspetto della riga dell'intestazione in un controllo DetailsView.

HeaderTemplate

Ottiene o imposta il contenuto definito dall'utente per la riga dell'intestazione in un controllo DetailsView.

HeaderText

Ottiene o imposta il testo da visualizzare nella riga dell'intestazione di un controllo DetailsView.

Height

Ottiene o imposta l'altezza del controllo server Web.

(Ereditato da WebControl)
HorizontalAlign

Ottiene o imposta l'allineamento orizzontale di un controllo DetailsView sulla pagina.

ID

Ottiene o imposta l'identificatore a livello di codice assegnato al controllo server.

(Ereditato da Control)
IdSeparator

Ottiene il carattere utilizzato per separare gli identificatori di controllo.

(Ereditato da Control)
Initialized

Ottiene un valore che indica se il controllo con associazione a dati è stato inizializzato.

(Ereditato da BaseDataBoundControl)
InsertMethod

Ottiene o imposta il nome del metodo sulla pagina che viene chiamata quando il controllo esegue un'operazione di inserimento.

InsertMethod

Ottiene o imposta il nome del metodo da chiamare per inserire i dati.

(Ereditato da CompositeDataBoundControl)
InsertRowStyle

Ottiene un riferimento all'oggetto TableItemStyle che consente di impostare l'aspetto delle righe di dati in un controllo DetailsView quando il controllo DetailsView è in modalità di inserimento.

IsBoundUsingDataSourceID

Ottiene un valore che indica se la proprietà DataSourceID è impostata.

(Ereditato da BaseDataBoundControl)
IsChildControlStateCleared

Ottiene un valore che indica se i controlli contenuti in questo controllo dispongono di informazioni sullo stato del controllo.

(Ereditato da Control)
IsDataBindingAutomatic

Ottiene un valore che indica se l'associazione dati è automatica.

(Ereditato da BaseDataBoundControl)
IsEnabled

Ottiene un valore che indica se il controllo è abilitato.

(Ereditato da WebControl)
IsTrackingViewState

Ottiene un valore che indica se il controllo server salva le modifiche allo stato di visualizzazione.

(Ereditato da Control)
IsUsingModelBinders

Ottiene un valore che indica se l'associazione del modello è in uso.

(Ereditato da CompositeDataBoundControl)
IsViewStateEnabled

Ottiene un valore che indica se lo stato di visualizzazione è attivato per il controllo corrente.

(Ereditato da Control)
ItemType

Ottiene o imposta il nome del tipo di elemento dati per l'associazione dati fortemente tipizzata.

(Ereditato da DataBoundControl)
LoadViewStateByID

Ottiene un valore che indica se il controllo prende parte al caricamento del proprio stato di visualizzazione tramite ID anziché tramite l'indice.

(Ereditato da Control)
NamingContainer

Ottiene un riferimento al contenitore dei nomi del controllo server, che crea uno spazio dei nomi univoco per distinguere i controlli server che hanno lo stesso valore della proprietà ID.

(Ereditato da Control)
Page

Ottiene un riferimento all'istanza Page che contiene il controllo server.

(Ereditato da Control)
PageCount

Ottiene il numero di record presenti nell'origine dati.

PageIndex

Ottiene o imposta l'indice del record visualizzato.

PagerSettings

Ottiene un riferimento all'oggetto PagerSettings che consente di impostare le proprietà dei pulsanti di spostamento in un controllo DetailsView.

PagerStyle

Ottiene un riferimento all'oggetto TableItemStyle che consente di impostare l'aspetto della riga di spostamento in un controllo DetailsView.

PagerTemplate

Ottiene o imposta il contenuto personalizzato per la riga di spostamento in un controllo DetailsView.

Parent

Ottiene un riferimento al controllo padre del controllo server nella gerarchia dei controlli della pagina.

(Ereditato da Control)
RenderingCompatibility

Ottiene un valore che specifica la versione di ASP.NET con cui sarà compatibile il codice HTML di cui è stato eseguito il rendering.

(Ereditato da Control)
RequiresDataBinding

Ottiene o imposta un valore che indica se deve essere chiamato il metodo DataBind().

(Ereditato da BaseDataBoundControl)
Rows

Ottiene un insieme di oggetti DetailsViewRow che rappresentano le righe di dati di un controllo DetailsView.

RowsGenerator

Ottiene o imposta un oggetto che implementa l'interfaccia IAutoFieldGenerator per popolare automaticamente le righe nella vista.

RowStyle

Ottiene un riferimento all'oggetto TableItemStyle che consente di impostare l'aspetto delle righe di dati in un controllo DetailsView.

SelectArguments

Ottiene un oggetto DataSourceSelectArguments che il controllo con associazione a dati utilizza al momento del recupero dei dati da un controllo origine dati.

(Ereditato da DataBoundControl)
SelectedValue

Ottiene il valore della chiave dati del record corrente in un controllo DetailsView.

SelectMethod

Nome del metodo da chiamare per leggere i dati.

(Ereditato da DataBoundControl)
Site

Ottiene informazioni sul contenitore del controllo corrente quando viene eseguito il rendering in un'area di progettazione.

(Ereditato da Control)
SkinID

Ottiene o imposta l'interfaccia personalizzata da applicare al controllo.

(Ereditato da WebControl)
Style

Ottiene un insieme di attributi di testo di cui verrà eseguito il rendering sotto forma di attributo di stile nel tag esterno del controllo server Web.

(Ereditato da WebControl)
SupportsDisabledAttribute

Ottiene un valore che indica se il controllo deve impostare l'attributo disabled dell'elemento HTML di cui è stato eseguito il rendering su "disabilitato" quando la proprietà IsEnabled del controllo è false.

(Ereditato da BaseDataBoundControl)
TabIndex

Ottiene o imposta l'indice di tabulazione del controllo server Web.

(Ereditato da WebControl)
TagKey

Ottiene il valore HtmlTextWriterTag per il controllo DetailsView.

TagName

Ottiene il nome del tag del controllo. Questa proprietà viene usata principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
TemplateControl

Ottiene o imposta un riferimento al modello che contiene il controllo.

(Ereditato da Control)
TemplateSourceDirectory

Ottiene la directory virtuale dell'oggetto Page o dell'oggetto UserControl che contiene il controllo server corrente.

(Ereditato da Control)
ToolTip

Ottiene o imposta il testo visualizzato quando il puntatore del mouse viene posizionato sul controllo server Web.

(Ereditato da WebControl)
TopPagerRow

Ottiene un oggetto DetailsViewRow che rappresenta la riga di spostamento superiore in un controllo DetailsView.

UniqueID

Ottiene l'identificatore univoco qualificato gerarchicamente per il controllo server.

(Ereditato da Control)
UpdateMethod

Ottiene o imposta il nome del metodo sulla pagina che viene chiamata quando il controllo esegue un'operazione di aggiornamento.

UpdateMethod

Ottiene o imposta il nome del metodo da chiamare per aggiornare i dati.

(Ereditato da CompositeDataBoundControl)
ValidateRequestMode

Ottiene o imposta un valore che indica se il controllo verifica la presenza di valori potenzialmente pericolosi nell'input proveniente dal browser.

(Ereditato da Control)
ViewState

Ottiene un dizionario di informazioni sullo stato che permette di salvare e ripristinare lo stato di visualizzazione di un controllo server attraverso più richieste per la stessa pagina.

(Ereditato da Control)
ViewStateIgnoresCase

Ottiene un valore che indica se l'oggetto StateBag non effettua la distinzione tra maiuscole e minuscole.

(Ereditato da Control)
ViewStateMode

Ottiene o imposta la modalità dello stato, visualizzazione di questo controllo.

(Ereditato da Control)
Visible

Ottiene o imposta un valore che indica se viene eseguito il rendering di un controllo server come interfaccia utente nella pagina.

(Ereditato da Control)
Width

Ottiene o imposta la larghezza del controllo server Web.

(Ereditato da WebControl)

Metodi

AddAttributesToRender(HtmlTextWriter)

Aggiunge attributi e stili HTML dei quali è necessario eseguire il rendering nell'oggetto HtmlTextWriterTag specificato. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
AddedControl(Control, Int32)

Chiamato dopo che un controllo figlio viene aggiunto alla raccolta Controls dell'oggetto Control.

(Ereditato da Control)
AddParsedSubObject(Object)

Notifica al controllo server che un elemento, XML o HTML, è stato analizzato e aggiunge l'elemento all'oggetto ControlCollection del controllo server.

(Ereditato da Control)
ApplyStyle(Style)

Copia tutti gli elementi non vuoti dello stile specificato nel controllo Web, sovrascrivendo eventuali elementi di stile del controllo. Il metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
ApplyStyleSheetSkin(Page)

Applica al controllo le proprietà di stile definite nel foglio di stile della pagina.

(Ereditato da Control)
BeginRenderTracing(TextWriter, Object)

Inizia la traccia in fase di progettazione dei dati di rendering.

(Ereditato da Control)
BuildProfileTree(String, Boolean)

Raccoglie informazioni sul controllo server e le recapita alla proprietà Trace in modo che vengano visualizzate quando è attivata la tracciatura per la pagina.

(Ereditato da Control)
ChangeMode(DetailsViewMode)

Pone il controllo DetailsView nella modalità specificata.

ClearCachedClientID()

Imposta il valore memorizzato nella cache ClientID su null.

(Ereditato da Control)
ClearChildControlState()

Elimina le informazioni sullo stato del controllo per i controlli figlio del controllo server.

(Ereditato da Control)
ClearChildState()

Elimina le informazioni sullo stato di visualizzazione e sullo stato del controllo per tutti i controlli figlio del controllo server.

(Ereditato da Control)
ClearChildViewState()

Elimina le informazioni sullo stato di visualizzazione per tutti i controlli figlio del controllo server.

(Ereditato da Control)
ClearEffectiveClientIDMode()

Imposta la proprietà ClientIDMode dell'istanza del controllo corrente e di tutti i controlli figlio su Inherit.

(Ereditato da Control)
ConfirmInitState()

Imposta lo stato inizializzato del controllo con associazione a dati.

(Ereditato da BaseDataBoundControl)
CopyBaseAttributes(WebControl)

Copia le proprietà non incapsulate dall'oggetto Style dal controllo server Web specificato al controllo server Web dal quale è stato chiamato il metodo. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
CreateAutoGeneratedRow(AutoGeneratedFieldProperties)

Crea un oggetto AutoGeneratedField che rappresenta un campo riga generato automaticamente utilizzando le proprietà di campo specificate.

CreateAutoGeneratedRows(Object)

Crea un insieme di campi riga generati automaticamente per l'elemento di dati specificato.

CreateChildControls()

Crea la gerarchia dei controlli utilizzata per eseguire il rendering di un controllo composito associato a dati in base ai valori memorizzati nello stato di visualizzazione.

(Ereditato da CompositeDataBoundControl)
CreateChildControls(IEnumerable, Boolean)

Crea la gerarchia dei controlli utilizzata per il rendering del controllo DetailsView.

CreateControlCollection()

Crea un nuovo oggetto ControlCollection per contenere i controlli figlio (valore letterale e server) del controllo del server.

(Ereditato da Control)
CreateControlStyle()

Crea un oggetto stile di tabella predefinito per il controllo DetailsView.

CreateDataSourceSelectArguments()

Crea l'oggetto DataSourceSelectArguments che viene passato al comando di selezione.

CreateFieldSet(Object, Boolean)

Crea l'insieme completo di campi riga generati automaticamente e definiti dall'utente utilizzati per compilare la gerarchia dei controlli.

CreateRow(Int32, DataControlRowType, DataControlRowState)

Crea un oggetto DetailsViewRow con l'indice di elemento, il tipo di riga e lo stato di riga specificati.

CreateTable()

Crea la tabella contenitore per il controllo DetailsView.

DataBind()

Chiama il metodo DataBind() della classe base.

DataBind(Boolean)

Associa un'origine dati al controllo server chiamato e ai relativi controlli figlio con un'opzione per generare l'evento DataBinding.

(Ereditato da Control)
DataBindChildren()

Associa un'origine dati al controllo server e ai relativi controlli figlio.

(Ereditato da Control)
DeleteItem()

Elimina il record corrente dall'origine dati.

Dispose()

Abilita un controllo server alla pulizia finale prima che venga rilasciato dalla memoria.

(Ereditato da Control)
EndRenderTracing(TextWriter, Object)

Termina la traccia in fase di progettazione dei dati di rendering.

(Ereditato da Control)
EnsureChildControls()

Determina se il controllo server contiene controlli figlio. In caso contrario, li crea.

(Ereditato da Control)
EnsureDataBound()

Chiama il metodo DataBind() dopo aver verificato che il controllo di elenco dei dati richieda l'associazione dati e che sia stato specificato un controllo origine dati valido.

EnsureID()

Crea un identificatore per i controlli a cui non è assegnato alcun identificatore.

(Ereditato da Control)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
ExtractRowValues(IOrderedDictionary, Boolean, Boolean)

Recupera i valori di ciascun campo visualizzato e li archivia nell'oggetto IOrderedDictionary specificato.

FindControl(String)

Cerca un controllo server nel contenitore dei nomi corrente con il parametro id specificato.

(Ereditato da Control)
FindControl(String, Int32)

Cerca nel contenitore di denominazione corrente un controllo server con il parametro id indicato e un intero, specificato nel parametro pathOffset, che agevola la ricerca. Non eseguire l'override di questa versione del metodo FindControl.

(Ereditato da Control)
Focus()

Imposta lo stato attivo per l'input su un controllo.

(Ereditato da Control)
GetCallbackResult()

Restituisce il risultato di un evento di callback diretto a un controllo.

GetCallbackScript(IButtonControl, String)

Restituisce la stringa di callback creata utilizzando l'argomento specificato.

GetData()

Recupera un oggetto DataSourceView utilizzato dal controllo associato a dati per eseguire le operazioni sui dati.

(Ereditato da DataBoundControl)
GetDataSource()

Recupera l'interfaccia IDataSource a cui è associato il controllo con associazione a dati, se presente.

(Ereditato da DataBoundControl)
GetDesignModeState()

Ottiene i dati della fase di progettazione per un controllo.

(Ereditato da Control)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetRouteUrl(Object)

Ottiene l'URL corrispondente a un set di parametri di route.

(Ereditato da Control)
GetRouteUrl(RouteValueDictionary)

Ottiene l'URL corrispondente a un set di parametri di route.

(Ereditato da Control)
GetRouteUrl(String, Object)

Ottiene l'URL che corrisponde a un set di parametri di route e a un nome della route.

(Ereditato da Control)
GetRouteUrl(String, RouteValueDictionary)

Ottiene l'URL che corrisponde a un set di parametri di route e a un nome della route.

(Ereditato da Control)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
GetUniqueIDRelativeTo(Control)

Restituisce la parte con prefisso della proprietà UniqueID del controllo specificato.

(Ereditato da Control)
HasControls()

Determina se il controllo server contiene controlli figlio.

(Ereditato da Control)
HasEvents()

Restituisce un valore che indica se gli eventi vengono registrati per il controllo o eventuali controlli figlio.

(Ereditato da Control)
InitializePager(DetailsViewRow, PagedDataSource)

Crea la riga di spostamento per il controllo DetailsView.

InitializeRow(DetailsViewRow, DataControlField)

Inizializza l'oggetto DetailsViewRow specificato.

InsertItem(Boolean)

Inserisce il record corrente nell'origine dati.

IsBindableType(Type)

Determina se il tipo di dati specificato può essere associato a un campo nel controllo DetailsView.

IsLiteralContent()

Determina se il controllo server conserva solo il contenuto literal.

(Ereditato da Control)
LoadControlState(Object)

Carica lo stato delle proprietà del controllo DetailsView da mantenere, anche quando la proprietà EnableViewState è impostata su false.

LoadViewState(Object)

Carica lo stato di visualizzazione precedentemente salvato del controllo DetailsView.

MapPathSecure(String)

Recupera il percorso fisico al quale è associato un percorso virtuale, assoluto o relativo.

(Ereditato da Control)
MarkAsDataBound()

Imposta lo stato del controllo nello stato di visualizzazione come associato correttamente ai dati.

(Ereditato da DataBoundControl)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
MergeStyle(Style)

Copia tutti gli elementi non vuoti dello stile specificato nel controllo Web, ma non sovrascrive eventuali elementi di stile del controllo. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
OnBubbleEvent(Object, EventArgs)

Determina se l'evento per il controllo server Web viene passato a un livello superiore nella gerarchia dei controlli server dell'interfaccia utente della pagina.

OnCreatingModelDataSource(CreatingModelDataSourceEventArgs)

Genera l'evento CreatingModelDataSource.

(Ereditato da DataBoundControl)
OnDataBinding(EventArgs)

Genera l'evento DataBinding.

(Ereditato da Control)
OnDataBound(EventArgs)

Genera l'evento DataBound.

(Ereditato da BaseDataBoundControl)
OnDataPropertyChanged()

Riassocia il controllo con associazione a dati ai relativi dati dopo la modifica di una delle proprietà di identificazione dell'origine dati di base.

(Ereditato da DataBoundControl)
OnDataSourceViewChanged(Object, EventArgs)

Genera l'evento DataSourceViewChanged.

OnInit(EventArgs)

Genera l'evento Init.

OnItemCommand(DetailsViewCommandEventArgs)

Genera l'evento ItemCommand.

OnItemCreated(EventArgs)

Genera l'evento ItemCreated.

OnItemDeleted(DetailsViewDeletedEventArgs)

Genera l'evento ItemDeleted.

OnItemDeleting(DetailsViewDeleteEventArgs)

Genera l'evento ItemDeleting.

OnItemInserted(DetailsViewInsertedEventArgs)

Genera l'evento ItemInserted.

OnItemInserting(DetailsViewInsertEventArgs)

Genera l'evento ItemInserting.

OnItemUpdated(DetailsViewUpdatedEventArgs)

Genera l'evento ItemUpdated.

OnItemUpdating(DetailsViewUpdateEventArgs)

Genera l'evento ItemUpdating.

OnLoad(EventArgs)

Consente di gestire l'evento Load.

(Ereditato da DataBoundControl)
OnModeChanged(EventArgs)

Genera l'evento ModeChanged.

OnModeChanging(DetailsViewModeEventArgs)

Genera l'evento ModeChanging.

OnPageIndexChanged(EventArgs)

Genera l'evento PageIndexChanged.

OnPageIndexChanging(DetailsViewPageEventArgs)

Genera l'evento PageIndexChanging.

OnPagePreLoad(Object, EventArgs)

Imposta lo stato inizializzato del controllo con associazione a dati prima del caricamento del controllo.

OnPreRender(EventArgs)

Genera l'evento PreRender.

OnUnload(EventArgs)

Genera l'evento Unload.

(Ereditato da Control)
OpenFile(String)

Ottiene un oggetto Stream utilizzato per leggere un file.

(Ereditato da Control)
PerformDataBinding(IEnumerable)

Associa l'origine dati specificata al controllo DetailsView.

PerformSelect()

Recupera i dati dall'origine dati associata.

(Ereditato da DataBoundControl)
PrepareControlHierarchy()

Imposta la gerarchia dei controlli del controllo DetailsView.

RaiseBubbleEvent(Object, EventArgs)

Assegna eventuali origini dell'evento e relative informazioni al controllo padre.

(Ereditato da Control)
RaiseCallbackEvent(String)

Crea gli argomenti per il gestore di callback nel metodo GetCallbackEventReference.

RaisePostBackEvent(String)

Genera gli eventi appropriati per il controllo DetailsView durante il postback al server.

RemovedControl(Control)

Chiamato dopo che un controllo figlio viene rimosso dalla raccolta Controls dell'oggetto Control.

(Ereditato da Control)
Render(HtmlTextWriter)

Visualizza il controllo DetailsView sul client utilizzando l'oggetto HtmlTextWriter specificato.

RenderBeginTag(HtmlTextWriter)

Esegue il rendering del tag HTML di apertura del controllo nel writer specificato. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
RenderChildren(HtmlTextWriter)

Restituisce il contenuto degli elementi figlio di un controllo server a un oggetto HtmlTextWriter specificato, che scrive il contenuto di cui eseguire il rendering nel client.

(Ereditato da Control)
RenderContents(HtmlTextWriter)

Esegue il rendering del contenuto del controllo nel writer specificato. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
RenderControl(HtmlTextWriter)

Restituisce il contenuto del controllo server a un oggetto HtmlTextWriter specificato e archivia le informazioni di traccia relative al controllo se la funzionalità di traccia è abilitata.

(Ereditato da Control)
RenderControl(HtmlTextWriter, ControlAdapter)

Restituisce il contenuto del controllo server a un oggetto HtmlTextWriter specificato utilizzando un oggetto ControlAdapter specificato.

(Ereditato da Control)
RenderEndTag(HtmlTextWriter)

Esegue il rendering del tag HTML di chiusura del controllo nel writer specificato. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
ResolveAdapter()

Ottiene l'adattatore del controllo responsabile del rendering del controllo specificato.

(Ereditato da Control)
ResolveClientUrl(String)

Ottiene un URL che può essere utilizzato dal browser.

(Ereditato da Control)
ResolveUrl(String)

Converte un URL in un formato utilizzabile dal client richiedente.

(Ereditato da Control)
SaveControlState()

Salva lo stato delle proprietà del controllo DetailsView da mantenere, anche quando la proprietà EnableViewState è impostata su false.

SaveViewState()

Salva lo stato di visualizzazione corrente del controllo DetailsView.

SetDesignModeState(IDictionary)

Imposta i dati della fase di progettazione per un controllo.

(Ereditato da Control)
SetPageIndex(Int32)

Imposta l'indice della pagina attualmente visualizzata nel controllo DetailsView.

SetRenderMethodDelegate(RenderMethod)

Assegna un delegato del gestore eventi per eseguire il rendering del controllo server e del relativo contenuto nel controllo padre.

(Ereditato da Control)
SetTraceData(Object, Object)

Imposta i dati di traccia per la traccia durante la fase di progettazione dei dati di rendering, utilizzando la chiave dei dati di traccia e il valore dei dati di traccia.

(Ereditato da Control)
SetTraceData(Object, Object, Object)

Imposta i dati di traccia per la traccia durante la fase di progettazione dei dati di rendering, utilizzando l'oggetto tracciato, la chiave dei dati di traccia e il valore dei dati di traccia.

(Ereditato da Control)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
TrackViewState()

Segna il punto da cui iniziare a individuare e salvare le variazioni dello stato di visualizzazione nel controllo DetailsView.

UpdateItem(Boolean)

Aggiorna il record corrente nell'origine dati.

ValidateDataSource(Object)

Verifica la possibilità di utilizzare l'oggetto a cui è associato un controllo con associazione a dati.

(Ereditato da DataBoundControl)

Eventi

CallingDataMethods

Si verifica quando vengono chiamati metodi di dati.

(Ereditato da DataBoundControl)
CreatingModelDataSource

Si verifica alla creazione dell'oggetto ModelDataSource.

(Ereditato da DataBoundControl)
DataBinding

Viene generato quando il controllo server viene associato a un'origine dati.

(Ereditato da Control)
DataBound

Viene dopo che un controllo server viene associato a un'origine dati.

(Ereditato da BaseDataBoundControl)
Disposed

Si verifica quando un controllo server viene rilasciato dalla memoria, ossia nell'ultima fase della durata di un controllo server quando viene richiesta una pagina ASP.NET.

(Ereditato da Control)
Init

Viene generato quando il controllo server viene inizializzato, ovvero nella prima fase della sua durata.

(Ereditato da Control)
ItemCommand

Si verifica quando viene fatto clic su un pulsante incluso in un controllo DetailsView.

ItemCreated

Si verifica quando viene creato un record in un controllo DetailsView.

ItemDeleted

Si verifica quando viene fatto clic su un pulsante Elimina in un controllo DetailsView, ma dopo l'operazione di eliminazione.

ItemDeleting

Si verifica quando viene fatto clic su un pulsante Elimina in un controllo DetailsView, ma prima dell'operazione di eliminazione.

ItemInserted

Si verifica quando viene fatto clic su un pulsante Inserisci in un controllo DetailsView, ma dopo l'operazione di inserimento.

ItemInserting

Si verifica quando viene fatto clic su un pulsante Inserisci in un controllo DetailsView, ma prima dell'operazione di inserimento.

ItemUpdated

Si verifica quando viene fatto clic su un pulsante Aggiorna in un controllo DetailsView, ma dopo l'operazione di aggiornamento.

ItemUpdating

Si verifica quando viene fatto clic su un pulsante Aggiorna in un controllo DetailsView, ma prima dell'operazione di aggiornamento.

Load

Viene generato quando il controllo server è caricato nell'oggetto Page.

(Ereditato da Control)
ModeChanged

Si verifica quando un controllo DetailsView tenta di cambiare modalità alternandosi tra modifica, inserimento e sola lettura, ma dopo l'aggiornamento della proprietà CurrentMode.

ModeChanging

Si verifica quando un controllo DetailsView tenta di cambiare modalità alternandosi tra modifica, inserimento e sola lettura, ma prima che venga aggiornata la proprietà CurrentMode.

PageIndexChanged

Si verifica quando il valore della proprietà PageIndex cambia dopo un'operazione di spostamento.

PageIndexChanging

Si verifica quando il valore della proprietà PageIndex cambia prima di un'operazione di spostamento.

PreRender

Si verifica dopo il caricamento dell'oggetto Control ma prima del rendering.

(Ereditato da Control)
Unload

Viene generato quando il controllo server viene scaricato dalla memoria.

(Ereditato da Control)

Implementazioni dell'interfaccia esplicita

IAttributeAccessor.GetAttribute(String)

Ottiene un attributo del controllo Web con il nome specificato.

(Ereditato da WebControl)
IAttributeAccessor.SetAttribute(String, String)

Imposta un attributo del controllo Web sul nome e il valore specificati.

(Ereditato da WebControl)
ICallbackContainer.GetCallbackScript(IButtonControl, String)

Crea lo script di callback per il controllo DetailsView.

ICallbackEventHandler.GetCallbackResult()

Vedere il metodo GetCallbackResult().

ICallbackEventHandler.RaiseCallbackEvent(String)

Genera l'evento di callback usando gli argomenti specificati.

IControlBuilderAccessor.ControlBuilder

Per una descrizione di questo membro, vedere ControlBuilder.

(Ereditato da Control)
IControlDesignerAccessor.GetDesignModeState()

Per una descrizione di questo membro, vedere GetDesignModeState().

(Ereditato da Control)
IControlDesignerAccessor.SetDesignModeState(IDictionary)

Per una descrizione di questo membro, vedere SetDesignModeState(IDictionary).

(Ereditato da Control)
IControlDesignerAccessor.SetOwnerControl(Control)

Per una descrizione di questo membro, vedere SetOwnerControl(Control).

(Ereditato da Control)
IControlDesignerAccessor.UserData

Per una descrizione di questo membro, vedere UserData.

(Ereditato da Control)
IDataBindingsAccessor.DataBindings

Per una descrizione di questo membro, vedere DataBindings.

(Ereditato da Control)
IDataBindingsAccessor.HasDataBindings

Per una descrizione di questo membro, vedere HasDataBindings.

(Ereditato da Control)
IDataBoundControl.DataKeyNames

Per una descrizione di questa proprietà, vedere DataKeyNames.

IDataBoundControl.DataMember

Per una descrizione di questa proprietà, vedere DataMember.

IDataBoundControl.DataSource

Per una descrizione di questa proprietà, vedere DataSource.

IDataBoundControl.DataSourceID

Per una descrizione di questa proprietà, vedere DataSourceID.

IDataBoundControl.DataSourceObject

Per una descrizione di questa proprietà, vedere DataSourceObject.

IDataBoundItemControl.DataKey

Per una descrizione di questa proprietà, vedere DataKey.

IDataBoundItemControl.Mode

Per una descrizione di questa proprietà, vedere Mode.

IDataItemContainer.DataItemIndex

Per una descrizione di questo membro, vedere DataItemIndex.

IDataItemContainer.DisplayIndex

Per una descrizione di questo membro, vedere DisplayIndex.

IExpressionsAccessor.Expressions

Per una descrizione di questo membro, vedere Expressions.

(Ereditato da Control)
IExpressionsAccessor.HasExpressions

Per una descrizione di questo membro, vedere HasExpressions.

(Ereditato da Control)
IFieldControl.FieldsGenerator

Per una descrizione di questa proprietà, vedere FieldsGenerator.

IParserAccessor.AddParsedSubObject(Object)

Per una descrizione di questo membro, vedere AddParsedSubObject(Object).

(Ereditato da Control)
IPostBackContainer.GetPostBackOptions(IButtonControl)

Per una descrizione di questo membro, vedere GetPostBackOptions(IButtonControl).

IPostBackEventHandler.RaisePostBackEvent(String)

Per una descrizione di questo membro, vedere RaisePostBackEvent(String).

Metodi di estensione

EnablePersistedSelection(BaseDataBoundControl)
Obsoleta.

Consente di rendere persistente la selezione nei controlli dati che supportano la selezione e il paging.

FindDataSourceControl(Control)

Restituisce l'origine dati associata al controllo dati per il controllo specificato.

FindFieldTemplate(Control, String)

Restituisce il modello di campo per la colonna specificata nel contenitore di denominazione del controllo specificato.

FindMetaTable(Control)

Restituisce l'oggetto metatabella per il controllo contenitore dei dati.

GetDefaultValues(INamingContainer)

Ottiene l'insieme di valori predefiniti per il controllo dei dati specificato.

GetMetaTable(INamingContainer)

Ottiene i metadati della tabella per il controllo dei dati specificato.

SetMetaTable(INamingContainer, MetaTable)

Imposta i metadati della tabella per il controllo dei dati specificato.

SetMetaTable(INamingContainer, MetaTable, IDictionary<String,Object>)

Imposta il mapping dei valori predefiniti e dei metadati della tabella per il controllo dei dati specificato.

SetMetaTable(INamingContainer, MetaTable, Object)

Imposta il mapping dei valori predefiniti e dei metadati della tabella per il controllo dei dati specificato.

TryGetMetaTable(INamingContainer, MetaTable)

Determina se sono disponibili i metadati della tabella.

EnableDynamicData(INamingContainer, Type)

Abilita il comportamento dati dinamici per il controllo dei dati specificato.

EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>)

Abilita il comportamento dati dinamici per il controllo dei dati specificato.

EnableDynamicData(INamingContainer, Type, Object)

Abilita il comportamento dati dinamici per il controllo dei dati specificato.

Si applica a

Vedi anche