using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

using APNSoft.WebControls;


public class WebForm1 : System.Web.UI.Page
{

    //DataGrid declaration
    protected APNSoftDataGrid dg1; 


    private void Page_Load(object sender, System.EventArgs e)
    {
        //Set the DataGrid properties
        dg1.ID = "dg1";
        dg1.BasePage = base.Page;
        dg1.SkinFolder = "~/Skins/Vista/";
        dg1.KeyFieldName = "CustomerID";
        
        //Define SQL query
        string SQL = @"SELECT CustomerID, CompanyName, ContactName 
            FROM Customers ORDER BY CustomerID";
        
        //Create the DataTable object
        DataTable myDataTable = GetDataSource(SQL);

        //Set the data source
        dg1.DataSource = myDataTable;
        dg1.DataBind();

        //Column formatting
        dg1.Columns["CustomerID"].Template = "~/Templates/Orders.ascx";
        dg1.Columns["CustomerID"].HeaderText = "Customer (CustomerID, CompanyName, ContactName):";
        dg1.Columns["CompanyName"].Visible = false;
        dg1.Columns["ContactName"].Visible = false;

    }



    //Returns a DataTable from MS Access database
    private DataTable GetDataSource(string query)
    {
        OleDbConnection conn = new OleDbConnection();
        OleDbDataAdapter MyOleDbDataAdapter = new OleDbDataAdapter();
        DataTable myDataTable = new DataTable();
        
        conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="+
            System.Web.HttpContext.Current.Server.MapPath("~/DataBase/Nwind.mdb");
        
        MyOleDbDataAdapter.SelectCommand = new OleDbCommand(query,conn);
        conn.Open();

        try
        {MyOleDbDataAdapter.Fill(myDataTable);}
        finally
        {conn.Close();}

        return myDataTable;
    }



    #region Web Form Designer generated code
    override protected void OnInit(EventArgs e)
    {
        InitializeComponent();
        base.OnInit(e);
    }
    
    private void InitializeComponent()
    {    
        this.Load += new System.EventHandler(this.Page_Load);
    }
    #endregion


}