Ég hef verið að vinna á það sem ég vona að verði bráðum-út CodePlex verkefni sem afla a ágætur samþætta hluti af hlutum vefur tala við hvor aðra í gegnum té / neytandi tengingar í þeim tilgangi að kanna SharePoint síðuna undir sængina. (Þetta hefur vissulega verið gert áður, en þetta er að læra verkefni eins mikið og allt annað). Þetta er ætlað að vera í staðinn fyrir Windows Explorer ljósi SharePoint 2010 skjal bókasöfn.
The merkjamál hefur venjulega endurkvæma hringja niður er Spweb og SPLists frá tilteknu útgangspunkt. The hlutur sem gerir allt sem fara yfir byggja upp XML band sem lítur eitthvað eins og this:
<sitecollection url =’HTTP://demo2010a:9090′>
<vefur
titill = 'Halló heimur Sandbox'
Snið = 'A síða fyrir lið til fljótt skipuleggja, Höfundur, og deila upplýsingum, BLAH BLAH BLAH '><lista
BCC_Health_Services_FAQs titill = '’
Snið = 'CustomList’
listid =’HTTP://demo2010a:9090/helloworldsandbox[hlut]1e02b001-3cb2-4f17-b63d-7809e86b4174′>
</lista><lista
'BCC_Notifications' title =
Snið = 'CustomList'
listid =’HTTP://demo2010a:9090/helloworldsandbox[hlut]5a5a13d1-877c-41c0-9063-b9612be80d5e’>
</lista></vefur>
</sitecollection>
Ég býst við að hreinsa upp þessi XML áður en allt er sagt og gert.
Ég vil að lokum fá þær upplýsingar upp og í TreeView stjórna. Ekki nákvæmlega jörð shattering efni.
Áskorunin sem ég tók hér var að tengja tré útsýni til XML Data Source eftirlit í stað handvirkt byggja upp treenodes mínar sem ég fara yfir tré. Ég gerði þetta að hluta vegna þess að ég er vísvitandi að gera hlutina erfiðari á mig (þetta er nám verkefni eftir allt) og að hluta til vegna þess að ég hef þetta óljós hugmynd að byggja upp tré hnúður eins og ég fara yfir tré er ekki góð hugmynd til lengri tíma litið.
Vandinn við þessa aðferð er að TreeView stjórna veit ekki um góða eiginleika á áhugaverða hnúður eins og "lista" eða "vefur" þannig að það sýnir þetta framleiðsla sjálfgefið:
Það er ekki gagnlegt. Þetta er þar sem TreeNodeBinding bekknum hjálpar. Ég get notað þetta til að segja TreeView stjórna hvernig það ætti að túlka XML. Hér er dæmi:
TNB = new TreeNodeBinding();
tnb.DataMember = "list"; // Þetta er merki á XML fyrir síðuna.
tnb.TargetField = "listid";
tnb.ValueField = "title";
tnb.ToolTipField = "Template";
Þessi binding segir TreeView að þegar það finnur <lista> hnút í XML, beita bókband fyrir TargetField, ValueField og ToolTipField. Í maí app, þessi kort sem hér segir:
- TargetField: Þegar einhver smellir á hnút gildi, þetta er það sem þú munt fá fyrir SelectedNode.Value. Þetta er ekki að rugla saman við ...
- ValueField: Þetta er það sem þú vilt að Treeview að sýna til notanda.
- ToolTipField: Gildi frá XML sem þú vilt sem Tooltip.
Bæta við að TreeNodebinding til DataBindings valglugganum og þú færð framleiðsla svona:
Ég ætla meira á allt þetta sem ég halda áfram á verkefninu og að lokum að setja þetta upp á Codeplex.
</enda>
Gerast áskrifandi að bloggið mitt.
Fylgdu mér á Twitter á http://www.twitter.com/pagalvin
Pingback: Tweets that mention Working With TreeNodeBinding in the ASP.NET Treeview Control « Paul Galvin's SharePoint Space -- Topsy.com
Hæ Paul,
I just checked that myself. It worked as far as you described that even if I don’t get that information from your site (what a pity :-)).
The point I am interested in is, I tried to make the structure lazy loading with the PopulateOnDemand property. Otherwise the treeview load the complete structure in a whole which I would like to avoid. This property PopulateOnDemand seems not to have any effect.
Also the treeview does not save any expand/ collapse state information.
Did you solve these issues?
Kveðjur
Holger
I know you posted this comment a long time ago. Sorry for never responding. I assume that you got your solution long since :).