Imports System
Imports System.Data
Imports System.Configuration
Imports System.Collections
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.Web.UI.HtmlControls

Partial Public Class DataGrid_Templates_Categories
    Inherits System.Web.UI.UserControl

    'Declarations
    Public GridRow As APNSoft.WebControls.GridRow = Nothing


    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
        'Declarations
        Dim dtCategories As DataTable = Nothing

        'Get Categories (Cached in session for best performance)
        Dim SessCategories As Object = Session("SessCategories")
        If SessCategories Is Nothing Then
            Dim SqlQuery As String = "SELECT * FROM Categories ORDER BY CategoryName"
            dtCategories = DataBase.GetDataTableOleDb(SqlQuery, "~/DataGrid/DataBases/Nwind.mdb")
            Session("SessCategories") = dtCategories
        Else
            dtCategories = CType(Session("SessCategories"), DataTable)
        End If


        'Add JavaScript call
        ddlCategories.Attributes.Add("onchange", "UpdateDB(this);")

        'Add Row ID
        ddlCategories.Attributes.Add("RowID", GridRow.RowID)

        'Add Categories
        For i As Integer = 0 To dtCategories.Rows.Count - 1
            'Get CategoryID & CategoryName
            Dim CategoryID As Integer = CInt(Fix(dtCategories.Rows(i)("CategoryID")))
            Dim CategoryName As String = CStr(dtCategories.Rows(i)("CategoryName"))

            'Create ListItem
            Dim Category As New ListItem(CategoryName, CategoryID.ToString())
            If CInt(Fix(GridRow.Cells("CategoryID").Value)) = CategoryID Then
                Category.Selected = True
            End If

            'Append Category
            ddlCategories.Items.Add(Category)
        Next i
    End Sub

End Class