Tag Archives: TreeNodeBinding

Darbo su TreeNodeBinding ASP.NET Treeview kontrolė

Aš dirbu ką tikiuosi bus greitai išleistas CodePlex projektas, kuris numato gražus integruotų tiek kalbėti viena kitai per teikėjas/vartotojų ryšiai siekiant tyrinėti SharePoint svetainėje pagal apima žiniatinklio dalių.  (Tai buvo tikrai padaryta iki, bet tai yra mokymosi projektas, kaip kas nors kitas).  Tai reiškia, kad pakeitimas windows explorer rodiniui SharePoint 2010 dokumentų bibliotekos.

Kodas yra įprasta rekursinis sudirbti ir SPWeb ir SPLists iš tikro atskaitos taško.  Objektą, kuris veikia visus kad einant kaupiasi XML formato eilute, atrodo maždaug taip:

<SiteCollection url =’http://demo2010a:9090′>
 
<interneto
     title = "Sveiki pasaulyje smėlio dėžė 
     Šablonas = "svetainė, kurioje komandos greitai organizuoti, Autorius, ir dalintis informacija, BLAH BLAH BLAH ">

     <sąrašas
        title = "BCC_Health_Services_FAQs’
        Šablonas = "CustomList’
       
ListId =’http://demo2010a:9090/helloworldsandbox[delim]1e02b001-3cb2-4f17-b63d-7809e86b4174′>
    
</sąrašas>

     <sąrašas
        title = "BCC_Notifications" 
        Šablonas = "CustomList" 
        ListId =’
http://demo2010a:9090/helloworldsandbox[delim]5a5a13d1 - 877c - 41c 0-9063-b9612be80d5e’>
     </sąrašas>

  </interneto>

</SiteCollection>

Tikiuosi valyti, kad XML prieš viskas pasakyta ir padaryta.

Noriu, kad galų gale gauti šią informaciją iki ir į Treeview kontrolės.  Ne visai žemės triuškinantis daiktai.

Aš paėmė čia iššūkis buvo medžio rodinyje prie XML duomenų šaltinio kontrolės vietoj rankiniu būdu kurti savo treenodes kaip aš feed medis.  Aš tai iš dalies todėl, kad aš sąmoningai padaryti dalykų sunkiau save (tai yra mokymosi projektas galų gale) ir iš dalies, nes aš tai neaiški sąvoka, kuriant medžio mazgų kaip aš feed medis nėra gera idėja, atsižvelgiant į ilgalaikę perspektyvą.

Šio požiūrio problema yra kad Treeview kontrolės nežino apie gera atributus įdomių mazguose kaip "sąrašą" arba "web", tai rodo tą produkciją pagal numatytuosius nustatymus:

 

image

Tai nėra naudinga.  Tai kur TreeNodeBinding klasės padeda.  Aš galiu naudoti pasakyti Treeview kontrolės, kaip tai turėtų aiškinti XML.  Štai pavyzdys:

tnb lt = naujas TreeNodeBinding();
tnb lt.DataMember = "sąrašas"; // Tai yra xml svetainės kortelė.
tnb lt.TargetField = "listid";
tnb lt.ValueField = "title";
tnb lt.ToolTipField = "Šablonas";

Šio saistymo pasakys, treeview, kad kai ji nustato, kad <sąrašas> XML mazgo, taikyti įsipareigojimus dėl TargetField, ValueField ir ToolTipField.  Gegužės App, tai žemėlapis taip:

  • TargetField: Kai kažkas paspaudžia ant mazgo reikšmę, tai, ką jūs gausite SelectedNode.Value.  Tai nereikėtų painioti su...
  • ValueField: Tai ką norite Rodyti vartotojui Treeview.
  • ToolTipField: Verte iš XML norimą kaip įrankio Patarimas.

Pridėti, kad TreeNodebinding medžio rodinyje DataBindings ir jums gauti išėjimo panašaus:

 

image

Aš turiu daugiau apie visa tai kaip aš toliau projekto ir galiausiai įdėti tai apie Codeplex.

</pabaigos>

Prenumeruoti savo dienoraštį.

Sekite mane Twitter ne http://www.twitter.com/pagalvin