من کار بر روی من امیدوارم که به زودی منتشر خواهد شد CodePlex پروژه ای که کمی یکپارچه زیبا از قسمت های وب به یکدیگر از طریق اتصال به شبکه ارائه کننده / مصرف کننده به منظور بررسی یک سایت شیرپوینت تحت پوشش، فراهم می کند. (این امر قطعا انجام شده قبل از, اما این یک پروژه آموزشی تا آنجا که هر چیز دیگری است). این به معنای جایگزینی برای ویندوز اکسپلورر ببینید شیرپوینت 2010 کتابخانه های اسناد.
کد تماس بازگشتی معمول پایین SPWeb و SPLists های از با توجه به نقطه شروع مورد نظر منتقل می کند. شی که که تراورس ایجاد یک رشته XML را که به نظر می رسد چیزی شبیه به این:
<آدرس sitecollection =’HTTP://demo2010a:9090′>
<وب سایت
عنوان = "گودال ماسهبازی" سلام جهان
الگو = 'سایت برای تیم ها را به سرعت سازماندهی, نویسنده, و به اشتراک گذاری اطلاعات, BLAH BLAH BLAH '>
<فهرست
BCC_Health_Services_FAQs عنوان = '’
الگو = 'CustomList’
listid =’HTTP://demo2010a:9090/helloworldsandbox[سهم من]1e02b001-3cb2-4f17-b63d-7809e86b4174′>
</فهرست>
<فهرست
'BCC_Notifications عنوان =
الگو = 'CustomList'
listid =’HTTP://demo2010a:9090/helloworldsandbox[سهم من]5a5a13d1-877C-41c0-9063-b9612be80d5e’>
</فهرست>
</وب سایت>
</sitecollection>
من انتظار دارم برای پاک کردن که XML قبل از اینکه همه چیز گفته و انجام.
من می خواهم در نهایت برای کسب این اطلاعات و تبدیل به یک کنترل TreeView. دقیقا خاکی چیزهای بسیار مخربی.
چالش من در اینجا در زمان اتصال نمای درختی به یک کنترل منبع داده های XML به جای دستی ساخت تا treenodes من به عنوان درخت من گذشتن. من این تا حدی به خاطر من عمدا ساخت چیز سخت تر بر روی خودم (این یک پروژه آموزشی بعد از همه است) و تا حدودی به دلیل این مفهوم مبهمی است که ایجاد گره های درخت به عنوان درخت ایده پیشنهاد خوبی نیست برای مدت طولانی من گذشتن.
مشکل با این روش این است که کنترل TreeView در مورد ویژگی های خوب بر روی گره های جالب مانند "فهرست" یا "وب" نمی دانم پس از آن این خروجی را به طور پیش فرض را نشان می دهد:
این مفید نیست. این است که در آن کلاس TreeNodeBinding کمک می کند. من نمی توانم این کنترل TreeView به بگویید چگونه باید تفسیر XML استفاده کنید. در اینجا یک مثال:
tnb = جدید TreeNodeBinding();
tnb.DataMember = "فهرست"; // این برچسب XML برای سایت.
tnb.TargetField = "listid;
tnb.ValueField = "عنوان";
tnb.ToolTipField = "الگو";
این الزام آور می گوید به TreeView و که زمانی که آن را میبیند <فهرست> گره در XML, درخواست اتصالات برای TargetField را, ValueField و ToolTipField. در ماه مه برنامه, این نقشه به شرح زیر است:
- TargetField: هنگامی که کسی کلیک بر روی یک مقدار گره, این همان چیزی است که شما برای SelectedNode.Value دریافت کنید. این است که نباید با اشتباه ...
- ValueField: این همان چیزی است که شما می خواهید بوشهر به کاربر نمایش داده می.
- ToolTipField: ارزش از XML است که شما به عنوان سازی tooltip.
اضافه کردن که TreeNodebinding به DataBindings نمای درختی است و شما می توانید خروجی شبیه به این:
من بیشتر در مورد این همه که من بر روی این پروژه ادامه و در نهایت از این در Codeplex.
</پایان>
مشترک شدن در وبلاگ من.
من در توییتر در http://www.twitter.com/pagalvin