Bol som prácu na to, čo dúfam, že bude čoskoro-uvoľní CodePlex projekt, ktorý poskytuje trochu pekné integrovaného webových častí hovorí k sebe navzájom prostredníctvom pripojenia poskytovateľ a spotrebiteľa pre skúmanie lokality SharePoint pod krytov. (To určite bolo vykonané pred, ale to je rovnako ako čokoľvek iného vzdelávania projekt). Znamená to, že sa náhrada za zobrazenie programu Prieskumník windows SharePoint 2010 knižnice dokumentov.
Kód má obvyklé rekurzívneho volania nadol SPWeb a SPLists z danej počiatočný bod. Objekt, ktorý má všetky že zasahujú hromadia XML reťazec, ktorý vyzerá nejako takto:
<sitecollection url =’http://demo2010a:9090′>
<Web
názov = "Hello World pieskovisko"
Šablóna = "stránky pre tímy, aby rýchlo usporiadať, spisovateľ, a zdieľanie informácií, BLA BLA BLA "><zoznam
názov = "BCC_Health_Services_FAQs’
Šablóna = "CustomList’
listid =’http://demo2010a:9090/helloworldsandbox[delim]1e02b001-3cb2-4f17-b63d-7809e86b4174′>
</zoznam><zoznam
názov = "BCC_Notifications"
Šablóna = "CustomList"
listid =’http://demo2010a:9090/helloworldsandbox[delim]5a5a13d1-877 c-41 c 0-9063-b9612be80d5e’>
</zoznam></Web>
</sitecollection>
Očakávam čistiť hore, že XML pred všetko, čo povedal a urobil.
Chcem sa nakoniec si, že informácie nahor a do Treeview control. Nie je presne Zeme otrasená veci.
Vzal som tu výzvu bolo pripojenie stromové zobrazenie zdroj údajov XML kontrolu namiesto manuálne budovanie mojej treenodes, ako prechádzať stromu. Já to urobil, čiastočne preto, že som zámerne tvorby veci ťažšie na seba (je to koniec koncov learningový projekt) a čiastočne, pretože mať tento vágny pojem že vybudovanie strom uzly, ako prechádzať stromu nie je dobrý nápad pre dlhodobo.
Problém s týmto prístupom je, že Treeview control nevie o dobré atribúty na zaujímavé uzloch ako "zoznam" alebo "web", takže to ukazuje tento výstup v predvolenom nastavení:
To nie je užitočné. To je, kde pomáha TreeNodeBinding triedy. Môžete to použiť povedať Treeview control, ako by mala interpretovať XML. Tu je príklad:
TNB Beninská = nová TreeNodeBinding();
TNB Beninská.DataMember = "zoznam"; // Je to označenie vo formáte xml pre lokalitu.
TNB Beninská.TargetField = "listid";
TNB Beninská.ValueField = "titul";
TNB Beninská.ToolTipField = "Šablóny";
Táto väzba hovorí treeview, že keď zistí <zoznam> uzol v súbore XML, uplatňovať väzby pre TargetField, ValueField a ToolTipField. V máji app, tieto mapy takto:
- TargetField: Keď niekto klikne na hodnotu uzla, to je to, čo dostanete na SelectedNode.Value. To nie je možné zameniť s...
- ValueField: To je to, čo chcete Treeview zobrazíte užívateľovi.
- ToolTipField: Hodnota z XML, ktorý ako názov tlačidla.
Pridá, že TreeNodebinding stromové zobrazenie DataBindings a vy dostanete výstup takhle:
Budete mať o to viac ako pokračovať na projekte a nakoniec to dať hore na Codeplex.
</koniec>
Nasledujte ma na stebėtų na http://www.twitter.com/pagalvin