Travay ak TreeNodeBinding nan kontwòl ASP.NET Treeview

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:

 

image

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:

 

image

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>

Vous pou m' blog.

Swiv mwen sou Twitter nan http://www.twitter.com/pagalvin

3 refleksyon sou "Travay ak TreeNodeBinding nan kontwòl ASP.NET Treeview

  1. Pingback: Tweets ki te mansyone ap travay ak TreeNodeBinding nan ASP.NET Treeview kontwòl «Paul Galvin SharePoint espas -- Topsy.com

  2. Holger

    Alo Paul,

    Mwen jis faktè ki tèt mwen. Li te travay kòm ke ou te dekri ki menm si mwen pa gen enfòmasyon sa soti kote ki gen ou (se donmay :-)).
    Mwen menm ki te enterese nan pwen se, Mwen te eseye pou fè sipò parese chaje ak pwopwiyete PopulateOnDemand a. Sinon, treeview la charge la nèt sou tout pwen èstrikti nan yon tout sa mwen ta renmen pou evite. Pwopriyete sa a PopulateOnDemand kwè li te pa genyen okenn efè.

    Tou treeview a pa sove développer une / tonbe feblès nan eta enfòmasyon.

    Te fè w rezoud pwoblèm sa yo?

    Salitasyon

    Holger

    N. repons
    1. Paul Galvin Post otè

      Mwen konnen ou te poste kòmantè sa a yon bon bout tan de sa. Mwen regrèt pa janm bay repons. Mwen jwe pou ou a solisyon ou depi lontan depi :).

      N. repons

kite yon repons

Adrès imèl ou pa pral dwe pibliye. Jaden obligatwa yo make *