Home   Cover Cover Cover Cover
 

Einfaches DataGrid


Zu Abschnitt 6.4.11 des Buchs

In diesem Beispiel werden Daten über Angestellte aus einer Datenbank ausgelesen und in einem DataGrid angezeigt. Hier ist zunächst die aspx-Seite mit der Deklaration des Steuerelements.

../../samples/6/DataGrid.aspx
<%@ Page Language="C#" Inherits="BasePage" Src="DataGrid.aspx.cs" %>
<html>
  <body>
    <form OnInit="PageInit" Runat="server">
      <asp:DataGrid ID="grid" OnLoad="GridLoad" Runat="server" />
    </form>
  </body>
</html>

Die Ablauflogik steckt im Hintergrundcode, der wie folgt aussieht:

../../samples/6/DataGrid.aspx.cs
using System;
using System.Data;
using System.Data.Common;
using System.Data.SqlClient;
using System.Web.UI;
using System.Web.UI.WebControls;

public class BasePage : Page {
  protected DataGrid grid;
  DataView dataView;
  
  public void PageInit(object sender, EventArgs e) {
    DataSet ds = new DataSet();
    SqlConnection con = new SqlConnection("data source=127.0.0.1\\NETSDK; " +
      "initial catalog=Northwind; user id=sa; password=; Trusted_Connection=true");
    string sqlString = "SELECT EmployeeID, FirstName, LastName FROM Employees";
    SqlDataAdapter adapter = new SqlDataAdapter(sqlString, con);
    adapter.Fill(ds, "Employees");
    if (ds.HasErrors) ds.RejectChanges(); else ds.AcceptChanges();
    dataView = ds.Tables["Employees"].DefaultView;
  }
  
  public void GridLoad(object sender, EventArgs e) {
    grid.HeaderStyle.Font.Bold = true;
    grid.AlternatingItemStyle.BackColor = System.Drawing.Color.LightGray;
    grid.DataSource = dataView;
    grid.DataBind();
  }
  
}

Ausführung

   http://dotnet.jku.at/book/samples/6/DataGrid.aspx

Ergebnis