نمایش نتایج 1 تا 2 از 2

نام تاپیک: چگونه با روش کد فرست یک treeview را به صورت بازگشتی در یک پروژه ویندوز فرم پر کنم؟

  1. #1

    Red face چگونه با روش کد فرست یک treeview را به صورت بازگشتی در یک پروژه ویندوز فرم پر کنم؟

    با سلام
    من در جدول دیتا بیس خود یک id, name, parentId دارم که می خواهم این ها را به صورت درختی در فرم ویندوز نمایش دهم. نحوه اتصال ... از entity framework می باشد.

    1.png
    2.png

    نمونه کد اتصال و خواندن اطلاعات از دیتابیس:

    3.png
    دقت کنید می خواهم نود های فرزند از هر ریشه یا (root) به صورت بازگشتی ساخته شوند!!! و حتما هم در قالب ویندوز فرم باشد.
    با تشکر از شما دوست عزیز.

  2. #2

    نقل قول: چگونه با روش کد فرست یک treeview را به صورت بازگشتی در یک پروژه ویندوز فرم پر کنم؟

    اگر کلاس رو self reference بنویسی به صورت زیر

    public class Vendor
    {
    public int Id { get; set; }
    public string Name { get; set; }
    public Vendor Parent { get; set; }
    }

    به صورت زیر میتونی پر کنی:

    private void AddNodes(List<Vendor> sourceVendors, Vendor parent, TreeNodeCollection tnCollection)
    {
    var childs =
    from v in sourceVendors
    where v.Parent == parent
    select v;
    foreach (Vendor child in childs)
    {
    TreeNode tn = tnCollection.Add(child.Id.ToString(), child.Name);
    AddNodes(sourceVendors, child, tn.Nodes);
    }
    }

    به صورت زیر هم فراخوانی کنید:

    List<Vendor> allVendors = db.Vendors.ToList();
    AddNodes(allVendors , null , treeView1.Nodes);

تاپیک های مشابه

  1. پاسخ: 14
    آخرین پست: چهارشنبه 18 شهریور 1394, 14:34 عصر
  2. چگونه از قفل شدم فرم جلوگيري کنم؟ جلوگيري از بسته شدن پروسس؟
    نوشته شده توسط hamedsoft در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 14
    آخرین پست: جمعه 29 اردیبهشت 1391, 05:43 صبح
  3. چگونه رمز عبور برنامه را از خط فرمان به صورت نامشخص یا ستاره دار دریافت کنم؟
    نوشته شده توسط khajavi در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 8
    آخرین پست: یک شنبه 23 تیر 1387, 06:59 صبح
  4. چگونه mysql 4.1 را روی ویندوز XP نصب کنم؟
    نوشته شده توسط aliramazani در بخش MySQL
    پاسخ: 1
    آخرین پست: شنبه 24 دی 1384, 15:46 عصر
  5. پاسخ: 0
    آخرین پست: سه شنبه 10 خرداد 1384, 07:57 صبح

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •