Uno degli obiettivi primari della versione 2.0 di ASP.NET è stato senz'altro quello di mettere gli sviluppatori nella condizione di creare applicazioni Web più o meno complesse riducendo drasticamente il numero complessivo di linee di codice da scrivere. A tale scopo sono stati introdotti una serie di controlli per il binding dei dati che permettono di evitare di scrivere codice. In questo script, per esempio, le linee di codice scritte sono pari a zero!
Tra i controlli DataBound è stato introdotto il controllo TreeView, che permette di rappresentare un set di dati strutturati gerarchicamente in una vista ad albero. Il TreeView eredita dalla classe astratta HierarchicalDataBoundControl e accetta una sorgente dati che implementa l'interfaccia IHierarchicalDataSource, per esempio una sorgente di tipo XmlDataSource. Tramite la collection DataBindings composta da elementi di tipo TreeNodeBinding è possibile definire la corrispondenza tra i nodi dell'albero e i nodi della sorgente dati. La proprietà MaxDataBindDepth del controllo TreeView permette inoltre di specificare la massima profondità dei nodi che vengono presi in considerazione durante l'operazione di binding. Nell'esempio riportato, dato che MaxDataDindDepth vale 2, vengono aggiunti alla struttura ad albero solo i nodi della sorgente dati Root, Node1 e Node2.
Il controllo TreeView e il relativo controllo DataSource di tipo XmlDataSource:
<asp:TreeView ID="tvwSample" Runat="server" DataSourceId="xmlData" CssClass="..." EnableLines="true" ShowLines="false" ShowLines="true" ShowExpandCollapse="true" ExpandDepth="2" MaxDataBindDepth="2">
<DataBindings>
<asp:TreeNodeBinding DataMember="Root" TextField="Title" SelectAction="Expand" />
<asp:TreeNodeBinding DataMember="Node1" TextField="Title" SelectAction="Expand" />
<asp:TreeNodeBinding DataMember="Node2" TextField="Title" NavigateUrlField="Url" SelectAction="Select" />
<asp:TreeNodeBinding DataMember="Node3" TextField="Title" NavigateUrlField="Url" SelectAction="Select" />
</DataBindings>
</asp:TreeView>
<asp:XmlDataSource ID="xmlData" runat="server" DataFile="~/App_Data/Data.xml" CacheDuration="20"></asp:XmlDataSource>Ecco la sorgente dati in formato XML:
<?xml version="1.0" encoding="utf-8" ?>
<Root Title="Root">
<Node1 Title="1">
<Node2 Title="1.1" Url="11.aspx">
<Node3 Title="1.1.1" Url="111.aspx"></Node3>
<Node3 Title="1.1.2" Url="112.aspx"></Node3>
</Node2>
<Node2 Title="1.2" Url="12.aspx">
<Node3 Title="1.2.1" Url="121.aspx"></Node3>
<Node3 Title="1.2.2" Url="122.aspx"></Node3>
</Node2>
</Node1>
</Root>- Rilasciata la Preview 2 di ASP.NET AJAX 4.0.
- Prima beta pubblica per il SP1 del .NET Framework 3.5 e VS 2008
- MailWebEventProvider perche sei public e abstract
- Introduzione a LINQ, LINQ to XML, Object e DataSet
- #907 - Utilizzo di XmlSerializer con custom collection
- Speciale per il lancio di Visual Studio 2008, SQL Server 2008 e Windows Server 2008 dal 25/02 al 07/03
- ASP.NET 3.5 Application Services (Membership, Roles, Profile API) sotto Classic ASP con IIS 7.0
- Beta 2 per Internet Explorer 8
- #42 - Salvare un documento XML con LINQ
- #934 - Accedere ai dati usando LinqDataSource
- The Developer Highway Code
- #935 - Sfruttare l'evento LoadComplete della pagina
Esprimi il tuo giudizio su questo script:
Per procedere devi essere autenticato.
Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.







Stampa
Snippet
Download 


10annidi.ASPItalia.com: iscriviti alla competizione e vinci fantastici premi ogni mese!