Mwen te gen te travay sou sa mwen espere ke pral yon dès-publié CodePlex pwojè ki founi yon bèl ti entegre de pati entènèt ap pale ak lòt via koneksyon founisè/dafè pou konsomatè tou pou l ' explorer yon sit SharePoint anba couvre yo. (Sa ki wè pa wè pase devan, Men, sa pase plis ke anyen ankò pwojè apprentissage yon). Sa vle di gen yon ranplasan pou vi onn fennèt a de SharePoint 2010 dokiman bibliyotèk.
Kòd la ki òdinè récursive ki te rele SPWeb a desann Et SPLists de yon bay kòmanse pwent (n). Bagay sa te fè tout sa parcours baze leve yon chaîne XML sanble yon bagay tankou sa:
<adrès entènèt sitecollection =’http://demo2010a:9090′>
<entènèt
tit = 'Bonjou mond Sandbox'
Modèle =' yon kote ki gen pou ekip yo pou òganize rapidement, otè, Et pataje enfòmasyon, BLAH BLAH BLAH'><lis
tit ='BCC_Health_Services_FAQs’
Modèle ='CustomList’
listid =’http://demo2010a:9090/helloworldsandbox[delim]1e02b001-3cb2-4f17-b63d-7809e86b4174′>
</lis><lis
tit = 'BCC_Notifications'
Modèle = 'CustomList'
listid =’http://demo2010a:9090/helloworldsandbox[delim]5a5a13d1 - 877c - 41c 0-9063-b9612be80d5e’>
</lis></entènèt>
</sitecollection>
Mwen espere pou netwaye moute sa XML devan tout te di Et fè.
Mwen vle pou, jwenn enfòmasyon sa, kanpe, nan yon Treeview kontwòl. Pas exactement latè ainsi bagay.
Defi an, mwen te fè sou isit la se te pou konekte vi pyebwa a pou yon sous enfòmasyon XML kontwòl olye ke l lamen rebati treenodes m' menm jan mwen parcourir pyebwa a. M' te fè sa en paske mwen pral espre fè sa w'a di sou tèt mwen (sa se yon pwojè apprentissage fin fè tout) Et en paske mwen gen nosyon vag sa a pou rebati noeuds pyebwa tankou mwen parcourir pyebwa a pa yon bon lide pou a lon tèm.
Pwoblèm lan ak apwòch sa a se sa Treeview kontwòl pa konnen osijè de tout bon attributs sou enteresan noeuds tankou "lis" ou "web" se konsa li montre ke sortie sa a pa defo:
Sa pa itil. Sa se kote klas TreeNodeBinding la te ede. Mwen kapab itilize sa a pou di Treeview kontwòl jan sa ta dwe tradwi a XML. Isit la se yon egzanp:
tnb = TreeNodeBinding nouvo();
tnb.DataMember = "lis"; // Se sa rele etikèt ki nan xml a pou yon kote ki gen.
tnb.TargetField = "listid";
tnb.ValueField = "Tit";
tnb.ToolTipField = "Modèle";
Liaison sa a di treeview a ki lè l' trouve yon <lis> nodozite nan XML a, aplike les liaisons pou TargetField, ValueField Et ToolTipField. Nan Me app, yo kat comme piba:
- TargetField: Lè yon moun Sur sou yon valè nodozite, sa a se sa w ap pran pou SelectedNode.Value. Sa a se pou fè ak Confusion...
- ValueField: Sa a se sa ou vle a Treeview pou yo ekspoze pou moun kap itilize li an.
- ToolTipField: Valè de XML sa ou vle kòm yon-.
Ajoute TreeNodebinding DataBindings vi pyebwa a, ou jwenn sortie kon sa:
M ap fè plis sou tout sa a menm jan mwen kontinye fè sou pwojè a Et evantyèlman mete sa a sou Codeplex.
</fen>
Swiv mwen sou Twitter nan http://www.twitter.com/pagalvin