'Visit http://www.laptrinhdotnet.com for more ASP.NET Tutorials
Namespace jQueryMegaDropDownMenu
Public Class _Default
Inherits System.Web.UI.Page
#Region "Create Menu"
Private SubCreateMenu()
Dim objBind As New DataTable
objBind = BindData(-1)
If Not objBind Is Nothing Then
If objBind.Rows.Count > 0 Then
rptMenu.DataSource = objBind
rptMenu.DataBind()
End If
End If
End Sub
#End Region
#Region "Bind Data"
Private FunctionBindData(ByVal ParentID As Integer) As DataTable
Dim objSQL As New SqlDataProvider
Dim objBind As DataTable = objSQL.FillTable("Pro_Menu_List", New ObjectPara("@ParentID", ParentID), New ObjectPara("@IsVisible", 1))
Return objBind
End Function
#End Region
#Region "Repeater Methods"
Private SubrptMenu_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs) HandlesrptMenu.ItemDataBound
If (e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem) Then
Dim MenuID AsInteger = DataBinder.Eval(e.Item.DataItem, "MenuID")
Dim MenuName AsString = DataBinder.Eval(e.Item.DataItem, "MenuName")
Dim objBind AsNew DataTable
objBind = BindData(MenuID)
Dim rptMenu1 AsRepeater = DirectCast(e.Item.FindControl("rptMenu1"), Repeater)
Dim level1 AsHtmlControls.HtmlGenericControl = DirectCast(e.Item.FindControl("level1"), HtmlGenericControl)
If NotrptMenu1 Is NothingAnd Not level1 Is Nothing Then
IfobjBind.Rows.Count > 0 Then
rptMenu1.DataSource = objBind
rptMenu1.DataBind()
level1.Visible = True
Else
level1.Visible = False
End If
Else
level1.Visible = False
End If
End If
End Sub
Public SubDetail_Bound(ByVal sender As Object, ByVal e As RepeaterItemEventArgs)
Try
If (e.Item.ItemType = ListItemType.Item Ore.Item.ItemType = ListItemType.AlternatingItem) Then
Dim MenuID AsInteger = DataBinder.Eval(e.Item.DataItem, "MenuID")
Dim MenuName AsString = DataBinder.Eval(e.Item.DataItem, "MenuName")
Dim objBind AsNew DataTable
objBind = BindData(MenuID)
Dim rptMenu AsRepeater = DirectCast(e.Item.FindControl("rptMenu2"), Repeater)
Dim level2 AsHtmlControls.HtmlGenericControl = DirectCast(e.Item.FindControl("level2"), HtmlGenericControl)
If NotrptMenu Is NothingAnd Not level2 Is Nothing Then
If objBind.Rows.Count > 0 Then
rptMenu.DataSource = objBind
rptMenu.DataBind()
level2.Visible = True
Else
level2.Visible = False
End If
Else
level2.Visible = False
End If
End If
Catch exception As Exception
End Try
End Sub
#End Region
#Region "Event Handles"
Protected SubPage_Load(ByVal sender AsObject, ByVal e As System.EventArgs) Handles Me.Load
Try
If Page.IsPostBack = False Then
CreateMenu()
End If
Catch ex As Exception
End Try
End Sub
#End Region
End Class
End Namespace