GridView.DataBind Metod

Definition

Binder datakällan till GridView kontrollen. Den här metoden kan inte ärvas.

public:
 override void DataBind();
public override sealed void DataBind();
override this.DataBind : unit -> unit
Public Overrides NotOverridable Sub DataBind ()

Exempel

I följande exempel visas hur du använder DataBind() metoden för att binda en datakälla till en GridView kontroll.


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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void Page_Load(Object sender, EventArgs e)
  {
    
    // This example uses Microsoft SQL Server and connects
    // to the Northwind sample database. The data source needs
    // to be bound to the GridView control only when the 
    // page is first loaded. Thereafter, the values are
    // stored in view state.                      
    if(!IsPostBack)
    {
        
      // Declare the query string.
      String queryString = 
        "Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]";
        
      // Run the query and bind the resulting DataSet
      // to the GridView control.
      DataSet ds = GetData(queryString);
      if (ds.Tables.Count > 0)
      {
        AuthorsGridView.DataSource = ds;
        AuthorsGridView.DataBind();
      }
      else
      {
        Message.Text = "Unable to connect to the database.";
      }
            
    }     
    
  }
    
  DataSet GetData(String queryString)
  {

    // Retrieve the connection string stored in the Web.config file.
    String connectionString = ConfigurationManager.ConnectionStrings["NorthWindConnectionString"].ConnectionString;      
 
    DataSet ds = new DataSet();
        
    try
    {
      // Connect to the database and run the query.
      SqlConnection connection = new SqlConnection(connectionString);        
      SqlDataAdapter adapter = new SqlDataAdapter(queryString, connection);
        
      // Fill the DataSet.
      adapter.Fill(ds);
            
    }
    catch(Exception ex)
    {
        
      // The connection failed. Display an error message.
      Message.Text = "Unable to connect to the database.";
        
    }
        
    return ds;
        
  }
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridView DataBind Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridView DataBind Example</h3>
            
      <asp:label id="Message"
        forecolor="Red"
        runat="server"/>
               
      <br/>    

      <asp:gridview id="AuthorsGridView" 
        autogeneratecolumns="true" 
        runat="server">
      </asp:gridview>
                        
    </form>
  </body>
</html>

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
    
    ' This example uses Microsoft SQL Server and connects
    ' to the Northwind sample database. The data source needs
    ' to be bound to the GridView control only when the 
    ' page is first loaded. Thereafter, the values are
    ' stored in view state.                      
    If Not IsPostBack Then
        
      ' Declare the query string.
      Dim queryString As String = _
        "Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        
      ' Run the query and bind the resulting DataSet
      ' to the GridView control.
      Dim ds As DataSet = GetData(queryString)
      If (ds.Tables.Count > 0) Then
      
        AuthorsGridView.DataSource = ds
        AuthorsGridView.DataBind()
      
      Else
      
        Message.Text = "Unable to connect to the database."
        
      End If
            
    End If
    
  End Sub
    
  Function GetData(ByVal queryString As String) As DataSet
    
    ' Retrieve the connection string stored in the Web.config file.
    Dim connectionString As String = ConfigurationManager.ConnectionStrings("NorthWindConnectionString").ConnectionString
 
    Dim ds As New DataSet()
        
    Try

      ' Connect to the database and run the query.
      Dim connection As New SqlConnection(connectionString)
      Dim adapter As New SqlDataAdapter(queryString, Connection)
        
      ' Fill the DataSet.
      Adapter.Fill(ds)
            
    
    Catch ex As Exception
        
      ' The connection failed. Display an error message.
      Message.Text = "Unable to connect to the database."
        
    End Try
        
    Return ds
        
  End Function
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridView DataBind Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridView DataBind Example</h3>
            
      <asp:label id="Message"
        forecolor="Red"
        runat="server"/>
               
      <br/>    

      <asp:gridview id="AuthorsGridView" 
        autogeneratecolumns="true" 
        runat="server">
      </asp:gridview>
                        
    </form>
  </body>
</html>

Kommentarer

DataBind() Använd metoden för att binda data från en datakälla till GridView kontrollen. Den här metoden löser alla databindningsuttryck i kontrollens aktiva mall.

Metoden DataBind anropas automatiskt om DataSourceID kontrollens GridView egenskap refererar till en giltig datakällakontroll.

I stället för att anropa DataBind metoden manuellt kan du använda modellbindning med din DataBind kontroll genom att ange SelectMethod egenskapen till namnet på en metod som returnerar data för GridView. GridView fylls sedan automatiskt med de data som returneras från select-metoden. Modellbindning kan förenkla koden för att arbeta med data. Mer information finns i Modellbindning och webbformulär.

Gäller för

Se även