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

نام تاپیک: tree view

  1. #1
    کاربر دائمی
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    تهران
    پست
    130

    tree view

    جستجو کردم از کد ها هم استفاده کردم به نتیجه نرسیدم.
    یه جدول دارم با ساختار:code-parentcode-codename
    می خوام اینو تویه tree view نمایش بدم بهش نود اضافه کنم ویرایش کنم حذف کنم.
    با تشکر از یاریتان

  2. #2
    کاربر دائمی آواتار mohammad272005
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    تهران
    پست
    639
    نمایش:
    1- این کد رو در Form1_Load قرار بده:

    listView1.Clear();
    listView1.Columns.Add("code");
    listView1.Columns.Add("parentcode");
    listView1.Columns.Add("codename");
    listView1.View = View.Details;

    و این کد رو هرجا که میخوای اطلاعات لود بشن قرار بده:

    foreach (DataRow row in dataSet1.Tables["test"].Rows)
    {
    ListViewItem item = newListViewItem(row["code"].ToString());
    item.SubItems.Add(row["parentcode"].ToString());
    item.SubItems.Add(row["codename"].ToString());
    listView1.Items.Add(item);
    }

    اضافه: متاسفانه مانند DataGridView نیست که بشه کاربر مستقیما این کار رو انجام بده

  3. #3
    کاربر دائمی
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    تهران
    پست
    130
    سلام.
    من tree view گفتم این که شما کدشو نوشتین list view .
    بیشتر توضیح بدین.
    خیلی به این کد احتیاج دارم.
    با تشکر

  4. #4
    کاربر دائمی آواتار Masoud_TB
    تاریخ عضویت
    آذر 1386
    محل زندگی
    Tehran
    پست
    165
    خوب شما می تونین این کار رو به صورت OnDemand انجام بدین که به نظر من بهترین روش است. OnDemand به این معنی که هر وقت در خواست برای باز شدن یک Nodeدر درختان آمد اطلاعات آن رو باز کنین و نمایش بدین.
    برای اینکار شما ابتدا باید سطح اول درخت را که در حقیقت ParentCodeشان خالی است را پر کنین و سپس وقتی درخواست باز شدن هر کدام از Node ها آمد اطلاعات سطح اول آن Node را پر کنین و به همین ترتیب تا انتها.

    این مثال کامل می تونه کارت رو راه بیاندازه:
    فایل های ضمیمه فایل های ضمیمه

  5. #5
    کاربر دائمی آواتار HAMRAHSOFT.IR
    تاریخ عضویت
    مرداد 1385
    محل زندگی
    هرجا كه غم و ناراحتي باشه
    پست
    1,175

    نقل قول: tree view

    نقل قول نوشته شده توسط mohammad272005 مشاهده تاپیک
    نمایش:
    1- این کد رو در Form1_Load قرار بده:

    listView1.Clear();
    listView1.Columns.Add("code");
    listView1.Columns.Add("parentcode");
    listView1.Columns.Add("codename");
    listView1.View = View.Details;

    و این کد رو هرجا که میخوای اطلاعات لود بشن قرار بده:

    foreach (DataRow row in dataSet1.Tables["test"].Rows)
    {
    ListViewItem item = newListViewItem(row["code"].ToString());
    item.SubItems.Add(row["parentcode"].ToString());
    item.SubItems.Add(row["codename"].ToString());
    listView1.Items.Add(item);
    }

    اضافه: متاسفانه مانند DataGridView نیست که بشه کاربر مستقیما این کار رو انجام بده
    دوستان كسي نمونه كه با بانك كار كنه نداره؟

  6. #6

    نقل قول: tree view

    سلام،
    ابتدا وارد Dataset Designer شو و یه Query به نام GetByParentID به TableAdapter جدولی که اطلاعات درخت رو نگه می داره اضافه کن. این Query یه پارامتر با نام @ParentID می گیره و تمام رکوردهایی رو که Parent اونها برابر پارامتر وارد شده هست رو بر می گردونه.
    بعد یه متد به شکل زیر به برنامت اضافه کن:


    private void ExploreTree(long ParentID, Node MyNode)
    {
    DataTable dt=new DataTable();
    dt=YourTableAdapter.GetByParentID(ParentID);

    foreach(DataRow dr in dt)
    Mynode.Nodes.Add(dr["Value"];

    foreach(DataRow dr in dt)
    ExploreTree(dr["NodeID"], MyNode);

    }


    NodeID شناسه هر رکورد از جدول درخت است. ابتدا یکبار ExploreTree رو با ParentID برابر null صدا بزن تا گره های ریشه رو اضافه کنه. بقیه گره ها رو خودش اتوماتیک ایجاد می کنه.

  7. #7
    کاربر دائمی آواتار HAMRAHSOFT.IR
    تاریخ عضویت
    مرداد 1385
    محل زندگی
    هرجا كه غم و ناراحتي باشه
    پست
    1,175

    نقل قول: tree view

    نقل قول نوشته شده توسط tooraj_azizi_1035 مشاهده تاپیک
    سلام،
    ابتدا وارد Dataset Designer شو و یه Query به نام GetByParentID به TableAdapter جدولی که اطلاعات درخت رو نگه می داره اضافه کن. این Query یه پارامتر با نام @ParentID می گیره و تمام رکوردهایی رو که Parent اونها برابر پارامتر وارد شده هست رو بر می گردونه.
    بعد یه متد به شکل زیر به برنامت اضافه کن:


    private void ExploreTree(long ParentID, Node MyNode)
    {
    DataTable dt=new DataTable();
    dt=YourTableAdapter.GetByParentID(ParentID);

    foreach(DataRow dr in dt)
    Mynode.Nodes.Add(dr["Value"];

    foreach(DataRow dr in dt)
    ExploreTree(dr["NodeID"], MyNode);

    }


    NodeID شناسه هر رکورد از جدول درخت است. ابتدا یکبار ExploreTree رو با ParentID برابر null صدا بزن تا گره های ریشه رو اضافه کنه. بقیه گره ها رو خودش اتوماتیک ایجاد می کنه.
    دوست خوب ممكن بصورت نمونه قزارش بديد

  8. #8
    کاربر تازه وارد آواتار Ishtar_4552
    تاریخ عضویت
    مهر 1388
    محل زندگی
    اصفهان
    پست
    62

    نقل قول: tree view

    با سلام به دوستان
    حالا که موضوع تاپیک در مورد treeview هست من سوالم رو همین جا مطرح می کنم ، من یک جدول با ساختارزیر دارم که فیلدها و اطلاعات جدول به صورت زیر هست:

    type Category Product ID
    Type1 Cat1 Product1 1
    Type2 Cat2 Product2 2
    Type2 Cat1 Product1 3
    Type1 Cat2 Product2 4
    Type2 Cat3 Product1 5
    می خوام این اطلاعات رو داخل یک treeview قرار بدم،با توجه به اینکه برای ایجاد گره پدر لازمه که اطلاعات رو از فیلد product بگیره وگره های فرزند رو هم از فیلد Category می گیره و گره های فرزند Categoryهم از فیلد type گرفته می شن ،مثلا برای جدول بالا برای رکورد Product1 باید یک چنین ساختاری ایجاد کنه:
    Product1--> Cat1-->Type1
    Type2
    برای این کارنیاز به یک الگوریتم بهینه دارم،کسی تجربه ای در این زمینه داره؟

  9. #9

    نقل قول: tree view

    نقل قول نوشته شده توسط golagha_program مشاهده تاپیک
    جستجو کردم از کد ها هم استفاده کردم به نتیجه نرسیدم.
    یه جدول دارم با ساختار:code-parentcode-codename
    می خوام اینو تویه tree view نمایش بدم بهش نود اضافه کنم ویرایش کنم حذف کنم.
    با تشکر از یاریتان

                DataTable dt = SelectAllFromDB();

    foreach (DataRow row in dt.Rows)
    {
    string parentKey = row["parentcode"].ToString();
    TreeNode n = new TreeNode(){
    Text = row["codename"].ToString(),
    Name= row["code"].ToString()
    };
    if (treeView1.Nodes.ContainsKey(parentKey))
    treeView1.Nodes[parentKey].Nodes.Add(n);
    else
    treeView1.Nodes.Add(n);
    }

  10. #10

    نقل قول: tree view

    نقل قول نوشته شده توسط Ishtar_4552 مشاهده تاپیک
    با سلام به دوستان
    حالا که موضوع تاپیک در مورد treeview هست من سوالم رو همین جا مطرح می کنم ، من یک جدول با ساختارزیر دارم که فیلدها و اطلاعات جدول به صورت زیر هست:

    type Category Product ID
    Type1 Cat1 Product1 1
    Type2 Cat2 Product2 2
    Type2 Cat1 Product1 3
    Type1 Cat2 Product2 4
    Type2 Cat3 Product1 5
    می خوام این اطلاعات رو داخل یک treeview قرار بدم،با توجه به اینکه برای ایجاد گره پدر لازمه که اطلاعات رو از فیلد product بگیره وگره های فرزند رو هم از فیلد Category می گیره و گره های فرزند Categoryهم از فیلد type گرفته می شن ،مثلا برای جدول بالا برای رکورد Product1 باید یک چنین ساختاری ایجاد کنه:
    Product1--> Cat1-->Type1
    Type2
    برای این کارنیاز به یک الگوریتم بهینه دارم،کسی تجربه ای در این زمینه داره؟
                DataTable dt = SelectAllFromDB();

    foreach (DataRow row in dt.Rows)
    {
    string productKey = row["Product"].ToString();
    string catKey = row["Category"].ToString();
    string typeKey = row["type"].ToString();

    TreeNode nP = new TreeNode()
    {
    Text = productKey,
    Name = productKey
    };
    TreeNode nC = new TreeNode()
    {
    Text = catKey,
    Name = catKey
    };
    TreeNode nT = new TreeNode()
    {
    Text = typeKey,
    Name = typeKey
    };

    if (!treeView1.Nodes.ContainsKey(productKey))
    treeView1.Nodes.Add(nP);

    if (!treeView1.Nodes[productKey].Nodes.ContainsKey(catKey))
    treeView1.Nodes[productKey].Nodes.Add(nC);

    if (!treeView1.Nodes[productKey].Nodes[catKey].Nodes.ContainsKey(typeKey))
    treeView1.Nodes[productKey].Nodes[catKey].Nodes.Add(nT);
    }

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

  1. خواهش می کنم Tree view در VB ؟
    نوشته شده توسط mahdi_7610 در بخش برنامه نویسی در 6 VB
    پاسخ: 3
    آخرین پست: جمعه 23 آذر 1386, 16:42 عصر
  2. دیتابیس و Tree view
    نوشته شده توسط solook در بخش برنامه نویسی در Delphi
    پاسخ: 6
    آخرین پست: یک شنبه 12 فروردین 1386, 10:56 صبح
  3. tree view in VFP
    نوشته شده توسط mostafaalizadeh در بخش Foxpro
    پاسخ: 1
    آخرین پست: جمعه 03 فروردین 1386, 10:28 صبح
  4. tree view
    نوشته شده توسط negar84 در بخش C#‎‎
    پاسخ: 3
    آخرین پست: شنبه 08 مهر 1385, 17:34 عصر
  5. پیمایش و پردازش نودهای یک tree view
    نوشته شده توسط mirza در بخش برنامه نویسی در Delphi
    پاسخ: 3
    آخرین پست: دوشنبه 19 دی 1384, 13:34 عصر

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

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