سؤال

لدي سؤال بخصوص ASP.NET 3.5 Treeview و TreeNodes. أرغب في إنشاء Treeivew يدعم خانة الاختيار متعددة المراحل. أود في الواقع 4 ولايات - فحص ، غير محدد ، غير محدد (مثل مربع Tri -State - الوالد هو Tri -State ، إن لم يكن كل الأطفال يتم فحصهم) ولا يمكن عدمه (مربع الاختيار هذا بمثابة X و Greyed Out). لقد قرأت حول كيفية إضافة عناصر تحكم مستخدم مخصصة ، باستخدام عنصر تحكم مستخدم الويب (.ascx) ، لكن لا يبدو أنه يعمل بهذه الطريقة لتجاوز TreeNode و TreeView. أعرض بيانات ثابتة في ملف .xml ، وأحب حقًا إمكانية ربط TreeView بمصاعد البيانات. لذلك ، أفضل الاستمرار في استخدام الشجرة إذا استطعت.

لذلك أعتقد أن لدي بعض الأسئلة:

  1. كيف يمكنني تجاوز TreeView أو TreeNode ، وأضفه إلى WebForm؟ (لذلك لا يزال بإمكاني استخدام المصمم؟) هل يجب أن أقوم ببنائها في .dll وتحميلها بهذه الطريقة؟ أو هل يمكنني إضافة ملفات .CS إلى مشروعي؟

  2. هل لدى أي شخص أي أفكار حول كيفية تغيير treeNode للتعامل مع Stestates؟

  3. أي أفكار حول كيفية استخدام الصور المخصصة الخاصة بي لحالات الفحص المختلفة؟

شكرًا!

هل كانت مفيدة؟

المحلول

لدي إجابة على سؤالي الأول - كيف يمكنني تجاوز TreeView أو TreeNode ، وأضفه إلى WebForm؟ (لذلك لا يزال بإمكاني استخدام المصمم؟) هل يجب أن أقوم ببنائها في .dll وتحميلها بهذه الطريقة؟ أو هل يمكنني إضافة ملفات .CS إلى مشروعي؟

قد يعرف الجميع كيفية القيام بذلك ، لكنه كان أخبارًا بالنسبة لي. أضف الفئات الموسعة إلى مجلد App_Code في مساحة الاسم:

namespace MyWebsiteControls
{
   ...
}

بعد ذلك ، قم بتضمين مرجع إلى مساحة الاسم في ملف web.config ضمن:

<pages/>
    <controls>
        <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add namespace="MyWebsiteControls" tagPrefix="MyWebsiteControls"/>
    </controls>
</pages>"

ثم اتصل بإرسالك في ملف .aspx:

<MyWebsiteControls:XTreeView ID="TreeView1" runat="server" DataSourceID="Checklist"
    ShowCheckBoxes="All" CssClass="treeViewStyle">
</MyWebsiteControls:XTreeView>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top