Osaisiko joku auttaa seuraavanlaisessa ongelmassa?
Olen tehnyt masterpagen puolella valikon tyylillä
Dim s As New ListItem("testi", "testisivu.aspx")
mainMenu.Items.Add(s)Tässä kohtaa tarkistelen mitä valikon kohtaa käyttäjä painaa.
Protected Sub mainMenu_Click(ByVal sender As Object, _
ByVal e As System.Web.UI.WebControls.BulletedListEventArgs) _
Handles mainMenu.Click
Dim position As Integer = e.Index
For i As Integer = 0 To mainMenu.Items.Count - 1
If i = e.Index Then
mainMenu.Items(i).Attributes.Add("class", "on")
Else
mainMenu.Items(i).Attributes.Remove("class")
End IfOngelma on kun ohjelma käännetään niin käyttäjä ei ole vielä painanut mitään valikon kohtaa joten tuo tyylimuotoilun tarkistus ei mene läpi?
Toinen ongelma on kun käyttäjä vaikkapa hakee jotain tietoja sivulta niin sivu latautuu uudestaan ja tyylitieto ei pysy enää muistissa? Voisikohan joku fiksumpi auttaa?
Heippa ezku!
Voisit vaikka kokeilla jotain seuraavanlaista...
Sub Page_Load(sender As Object, e As EventArgs)
If Not Page.isPostBack Then
Dim item As ListItem = mainMenu.Items(0)
SetAttributeBySelection(item)
item = Nothing
End If
End Sub
Protected Sub mainMenu_Click( _
sender As Object, e As BulletedListEventArgs)
SetAttributeBySelection(sender.Items(e.Index))
End Sub
Protected Sub SetAttributeBySelection(ByVal s_item As Object)
Dim item As ListItem
For Each item In mainMenu.Items
If s_item.ToString = item.ToString Then
item.Selected = True
item.Attributes.Add("class", "on")
Else
item.Selected = False
item.Attributes.Remove("class")
End If
Next
item = Nothing
End SubAihe on jo aika vanha, joten et voi enää vastata siihen.