sono riuscita a fare molti passi avanti dal post.......adesso visualizza benissimo il minù ad albero, ma resta sempre il problema della parte grafica che vorrei cambiare e modificare:
Dalla mia ricerca ho visto che ci sono molte persone in internet che hanno probblemi di i miei stessi probblemi con il menù ad albero.
Ed allora perche non fare di questo post una specie di tutorial per tutti quelli come me che hanno cercato invano in google e non sono riusciti a trovare niente di soddisfacente.
Io posto il codice VB funzionante:
PartialPublicClass template
Inherits Page
Dim temp AsString
Dim cont AsInteger
ProtectedSub Menu_Load(ByVal sender AsObject, ByVal e As System.EventArgs) HandlesMe.Load
IfNot IsPostBack Then
Dim nodo AsNew TreeNode
NodoPrincipale(nodo, 1)
TreeView1.Nodes.Add(nodo)
nodo.Text = "MENU"
'nodo.Target = ""
TreeView1.CollapseAll()
TreeView1.Nodes(0).Expand()
'MsgBox.Show(Me.lbCodiceOrdine.ID.ToString(), Page)
EndIf
EndSub
PrivateSub NodoPrincipale(ByVal nodo As TreeNode, ByVal codicePadre AsInteger)
Try
'definisco il nodo principale della treeview, caricanco le diverse tipologie di magazzini
cnGeneral.SelectCommand = "SELECT Collegamento, Titolo,codice,url,TARGET,images FROM MENU Where codicepadre=@CodicePadre ORDER BY Codice"
cnGeneral.SelectCommandType = SqlDataSourceCommandType.Text
cnGeneral.SelectParameters.Clear()
cnGeneral.SelectParameters.Add("CodicePadre", TypeCode.Int32, codicePadre)
Dim dw As DataView = cnGeneral.Select(DataSourceSelectArguments.Empty)
ForEach rowTipo As DataRow In dw.Table.Rows
Dim nodeTipo As System.Web.UI.WebControls.TreeNode = New System.Web.UI.WebControls.TreeNode
If IsDBNull((rowTipo("Url"))) Then
nodeTipo.NavigateUrl = ""
Else
nodeTipo.NavigateUrl = rowTipo("Url")
EndIf
If IsDBNull((rowTipo("TARGET"))) Then
nodeTipo.Target = "_self"
Else
nodeTipo.Target = rowTipo("TARGET")
EndIf
If IsDBNull((rowTipo("images"))) Then
nodeTipo.ImageUrl = ""
Else
nodeTipo.ImageUrl = rowTipo("images")
EndIf
nodeTipo.Text = rowTipo("Titolo")
If IsDBNull((rowTipo("collegamento"))) Then
temp = 0 + rowTipo("codice")
Else
temp = rowTipo("collegamento")
EndIf
nodeTipo.Value = temp
nodeTipo.ToolTip = rowTipo("codice")
nodo.ChildNodes.Add(nodeTipo)
IfNot IsDBNull((rowTipo("collegamento"))) Then
NodoPrincipale(nodeTipo, temp)
EndIf
Next
Catch ex As Exception
'Utility.ErrorLog(ex.ToString(), Page)
EndTry
EndSub
ProtectedSub TreeView1_SelectedNodeChanged1(ByVal sender AsObject, ByVal e As System.EventArgs) Handles TreeView1.SelectedNodeChanged
'MsgBox.Show(TreeView1.SelectedNode.ToolTip.ToString(), Page)
'TreeView1.SelectedValue.ToString() + " " +
'MsgBox.Show(TreeView1.SelectedNode.Expanded.ToString(), Page)
If TreeView1.SelectedNode.Expanded.ToString() = TrueThen
TreeView1.SelectedNode.Collapse()
Else
TreeView1.SelectedNode.Expand()
'TreeView1.Nodes(0).Expand()
EndIf
EndSub
EndClass
```E naturalmente la relativa parte di pagina aspx:
<scriptrunat="server">
ProtectedSub TreeView1_SelectedNodeChanged(ByVal sender AsObject, ByVal e As System.EventArgs)
EndSub
</script>
<formid="form1"runat="server">
<asp:TreeViewID="TreeView1"runat="server"Height="550px"Width="152px"Font-Size="X-Small"style="font-family: 'Times New Roman', Times, serif;font-size: small"ImageSet="Msdn"NodeIndent="10">
<parentnodestylefont-bold="False"/>
<hovernodestyleBackColor="#CCCCCC"font-underline="True"BorderColor="#888888"BorderStyle="Solid"/>
<selectednodestylebackcolor="green"font-underline="False"horizontalpadding="3px"verticalpadding="1px"BorderColor="#888888"BorderStyle="Solid"BorderWidth="1px"/>
<nodestylefont-names="Verdana"font-size="8pt"forecolor="Black"horizontalpadding="5px"nodespacing="1px"verticalpadding="2px"/>
</asp:TreeView></form>
Adesso bisognerebbe modificare la parte grafica ............ il probblema è che per ilmomento mi rendo conto di non esserne ancora capace.
Vorrei ottenere un menu simile a quello di questo sito:
http://www.unisi.it/disgeg/frame%20sinistro%20finale.htm
con l'unica differenza che vorrei che il menu si espandessi con il pasaggio del muose sopra senza cliccare la relativa voce.........
Se qualcuno volesse contribuire alla costruzione del menù io ne sarei grata.....ma penso anche molti altri utenti.
Se dovessi fare dei progresso li posto qui in modo da completare comunque il tutorial.