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

نام تاپیک: افزودن گروه و آیتمهای هر گروه به listview

  1. #1
    کاربر دائمی آواتار sjhosseini
    تاریخ عضویت
    آذر 1384
    محل زندگی
    بابل
    پست
    102

    افزودن گروه و آیتمهای هر گروه به listview

    سلام
    من کد زیر رو برای اضافه کردن گروه و ایتمهای مربوط به هر گروه نوشتم ولی مشکلش اینه که به ازای هر آیتم یک گروه تشکیل میده و نمیتونه آیتمهای با گروه مشابه رو تو یک گروه بزاره.


    myClass clsRecord = new myClass();
    DataTable dt = clsRecord.Get_All_Record();
    listView1.Groups.Clear();
    listView1.Items.Clear();


    ListViewGroup lvg;
    ListViewItem lvi;

    for (int i = 0; i < dt.Rows.Count; i++)
    {
    DataRow drow = dt.Rows[i];
    lvg = new ListViewGroup(drow["Group_Title"].ToString());
    if (!listView1.Groups.Contains(lvg))
    listView1.Groups.Add(lvg);
    lvi = new ListViewItem(drow["Item_title"].ToString(), lvg);
    listView1.Items.Add(lvi);
    }


  2. #2
    کاربر دائمی آواتار sjhosseini
    تاریخ عضویت
    آذر 1384
    محل زندگی
    بابل
    پست
    102

    نقل قول: افزودن گروه و آیتمهای هر گروه به listview

    متد Contains فقط بر اساس Header گروه ها جستجو نمی کنه، به همین دلیل، گروه مربوطه رو پیدا نمی کنه.

    می تونید از متد زیر استفاده کنید:

    private ListViewGroup ExistGroup(string strGName)
    {
    foreach (ListViewGroup lvg in listView1.Groups)
    if (lvg.Header == strGName)
    return lvg;
    return null;
    }

    و کدتون رو به صورت زیر تغییر بدید:

    for (int i = 0; i < dt.Rows.Count; i++)
    {
    DataRow drow = dt.Rows[i];
    lvg = ExistGroup(drow["Group_Title"].ToString());
    if (lvg==null)
    {
    lvg = new ListViewGroup(drow["Group_Title"].ToString());
    listView1.Groups.Add(lvg);
    }
    lvi = new ListViewItem(drow["Item_title"].ToString(), lvg);
    listView1.Items.Add(lvi);
    }

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

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