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

نام تاپیک: انتقال یک آیتم با subItems هایش به listview دیگر

  1. #1
    کاربر دائمی آواتار alinoori76
    تاریخ عضویت
    مهر 1388
    محل زندگی
    کرمان
    پست
    136

    Smile انتقال یک آیتم با subItems هایش به listview دیگر

    لطفا راهنمایی کنید اگر بخواهم از یک listview یک آیتم با subItems هایش را به listview دیگر منتقل کنم چگونه؟

  2. #2

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    این کد برای منتقل کردن آیتم شماره (itemIndex) از listView1 به listView2 هست.
    listView2.Items.Add(listView1.Items[itemIndex]);

  3. #3
    کاربر دائمی آواتار alinoori76
    تاریخ عضویت
    مهر 1388
    محل زندگی
    کرمان
    پست
    136

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    [QUOTE=ASHKANLAEI;2425571]این کد برای منتقل کردن آیتم شماره (itemIndex) از listView1 به listView2 هست.
    listView2.Items.Add(listView1.Items[itemIndex]);
    [/QUOTE
    سلام بازم نشد

    مشکل من اینه که ی جستجو میکنم داخل لیست ویو 1 ی آیتم رو پیدا میکنه فقط همین آیتم رو بدون ساب آیتمها داخل لیست ویو 2 نمایش میده . کل آیتم و ساب آیتمها رو نمایش نمیده. ببخشید من مبتدی هستم اگه منظورم رو بد بیان میکنم شرمنده

  4. #4
    کاربر دائمی
    تاریخ عضویت
    تیر 1391
    پست
    1,024

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    [QUOTE=alinoori76;2425587]
    نقل قول نوشته شده توسط ASHKANLAEI مشاهده تاپیک
    این کد برای منتقل کردن آیتم شماره (itemIndex) از listView1 به listView2 هست.
    listView2.Items.Add(listView1.Items[itemIndex]);
    [/QUOTE
    سلام بازم نشد

    مشکل من اینه که ی جستجو میکنم داخل لیست ویو 1 ی آیتم رو پیدا میکنه فقط همین آیتم رو بدون ساب آیتمها داخل لیست ویو 2 نمایش میده . کل آیتم و ساب آیتمها رو نمایش نمیده. ببخشید من مبتدی هستم اگه منظورم رو بد بیان میکنم شرمنده
    دقت کنید که Column ها و View شون (listView1.View) باید در هر دو ListView مشابه باشه تا ظاهر درستی داشته باشه.

    var item = listView1.Items[itemIndex];
    listView1.Items.RemoveAt(itemIndex);
    listView2.Items.Add(item);

  5. #5
    کاربر دائمی آواتار alinoori76
    تاریخ عضویت
    مهر 1388
    محل زندگی
    کرمان
    پست
    136

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    Untitled.jpg[QUOTE=the king;2425594]
    نقل قول نوشته شده توسط alinoori76 مشاهده تاپیک
    دقت کنید که Column ها و View شون (listView1.View) باید در هر دو ListView مشابه باشه تا ظاهر درستی داشته باشه.

    var item = listView1.Items[itemIndex];
    listView1.Items.RemoveAt(itemIndex);
    listView2.Items.Add(item);
    سلام . ی عکس گذاشتم تا بهتر متوجه مشکل بشید
    اول تکست باکسهای نام و فامیل و شماره را وارد کرده دکمه ورود را میزنیم تکستهای داخل تکست باکسها به لیست ویو 1 اضافه میشود . بعد داخل تکست باکس جستجو یک حرف را تایپ میکنیم اگر شامل هر یک از لیست ویو های جدول 1 باشد را داخل لیست ویور2 نمایش دهد . الان کلمه حاوی حرف وارد شده را پیدا میکند ولی فقط همان کلمه را داخل ستون نام لیست ویور2 نمایش میدهد و تمام لیست و ساب آیتمها را نمایش نمیدهد.
    خواسته من اینه که لیست ویو که کلمه پیدا شده داخل آن است را کامل همراه ساب فورمها در لیست ویو 2 نمایش دهد.
    متاسفانه مشکل با شیوه فوق حل نشد
    آخرین ویرایش به وسیله alinoori76 : یک شنبه 24 آذر 1398 در 16:33 عصر دلیل: اصلاح

  6. #6

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    خب شما کد هاتون در چه متغیری ذخیره میشه چه شکلی هست کدتون باید بگین دیگه.
    این کدی که اینجا نوشته شد برای انتقال یک آیتم لیست 1 از روی شماره اش در لیست، به لیست 2 هست و مشکلی نداره.

  7. #7
    کاربر دائمی
    تاریخ عضویت
    تیر 1391
    پست
    1,024

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    [QUOTE=alinoori76;2425625]Untitled.jpg
    نقل قول نوشته شده توسط the king مشاهده تاپیک

    سلام . ی عکس گذاشتم تا بهتر متوجه مشکل بشید
    اول تکست باکسهای نام و فامیل و شماره را وارد کرده دکمه ورود را میزنیم تکستهای داخل تکست باکسها به لیست ویو 1 اضافه میشود . بعد داخل تکست باکس جستجو یک حرف را تایپ میکنیم اگر شامل هر یک از لیست ویو های جدول 1 باشد را داخل لیست ویور2 نمایش دهد . الان کلمه حاوی حرف وارد شده را پیدا میکند ولی فقط همان کلمه را داخل ستون نام لیست ویور2 نمایش میدهد و تمام لیست و ساب آیتمها را نمایش نمیدهد.
    خواسته من اینه که لیست ویو که کلمه پیدا شده داخل آن است را کامل همراه ساب فورمها در لیست ویو 2 نمایش دهد.
    متاسفانه مشکل با شیوه فوق حل نشد
    وقتی کدی که نوشتید رو ارائه نمی کنید راهنمایی کردن برای تغییرش هم دشوار میشه.

    private void button2_Click(object sender, EventArgs e)
    {
    var search = textBoxSearch.Text.Trim();
    if (search.Length == 0)
    {
    return;
    }
    foreach (ListViewItem item in listView1.Items)
    {
    if (item.Text.IndexOf(search, StringComparison.CurrentCultureIgnoreCase) >= 0)
    {
    listView1.Items.Remove(item);
    listView2.Items.Add(item);
    continue;
    }
    foreach (ListViewItem.ListViewSubItem subItem in item.SubItems)
    {
    if (subItem.Text.IndexOf(search, StringComparison.CurrentCultureIgnoreCase) == -1)
    {
    continue;
    }
    listView1.Items.Remove(item);
    listView2.Items.Add(item);
    break;
    }
    }
    }

  8. #8
    کاربر دائمی آواتار alinoori76
    تاریخ عضویت
    مهر 1388
    محل زندگی
    کرمان
    پست
    136

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    formmm.jpg public partial class Form1 : Form
    {
    public string li;
    public string li2;
    public Form1()
    {
    InitializeComponent();

    }


    private void ButtonVOROOD_Click(object sender, EventArgs e)
    {
    if (TextBoxNAM.Text == "" || TextBoxFAMIL.Text == "" || TextBoxTEL.Text == "")
    {
    label5.Visible = true;
    this.label5.Text = "لطفا فیلدهای فوق را وارد کنید";
    }
    else
    {
    List<string> s = new List<string>() { TextBoxNAM.Text, TextBoxFAMIL.Text, TextBoxTEL.Text };
    ListViewItem a = new ListViewItem(s.ToArray());
    ListView1.Items.Add(a);


    TextBoxNAM.Text = "";
    TextBoxFAMIL.Text = "";
    TextBoxTEL.Text = "";
    label5.Visible = false;
    //int dd = ListView1.Items.Count;
    //label8.Text = dd.ToString();
    }

    }
    private void TextBoxSEARCH_TextChanged(object sender, EventArgs e)
    {

    if (TextBoxSEARCH.Text != "")
    {
    for (int i = 0; i < ListView1.Items.Count; i++)
    {
    for (int j = 0; j < ListView1.Columns.Count; j++)
    {
    li = ListView1.Items[i].SubItems[j].Text;
    bool a = li.Contains(TextBoxSEARCH.Text);
    if (a == true)
    {
    // li = ListView1.Items[i].SubItems[j].Text;
    ListView2.Items.Add(li);


    }
    }


    }
    }

    else
    {
    ListView2.Items.Clear();

    }

    }


    private void TextBoxSEARCH_TextChanged_1(object sender, EventArgs e)
    {


    }









    }
    }

  9. #9
    کاربر دائمی
    تاریخ عضویت
    تیر 1391
    پست
    1,024

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    نقل قول نوشته شده توسط alinoori76 مشاهده تاپیک
    formmm.jpg public partial class Form1 : Form
    {
    public string li;
    public string li2;
    public Form1()
    {
    InitializeComponent();

    }


    private void ButtonVOROOD_Click(object sender, EventArgs e)
    {
    if (TextBoxNAM.Text == "" || TextBoxFAMIL.Text == "" || TextBoxTEL.Text == "")
    {
    label5.Visible = true;
    this.label5.Text = "لطفا فیلدهای فوق را وارد کنید";
    }
    else
    {
    List<string> s = new List<string>() { TextBoxNAM.Text, TextBoxFAMIL.Text, TextBoxTEL.Text };
    ListViewItem a = new ListViewItem(s.ToArray());
    ListView1.Items.Add(a);


    TextBoxNAM.Text = "";
    TextBoxFAMIL.Text = "";
    TextBoxTEL.Text = "";
    label5.Visible = false;
    //int dd = ListView1.Items.Count;
    //label8.Text = dd.ToString();
    }

    }
    private void TextBoxSEARCH_TextChanged(object sender, EventArgs e)
    {

    if (TextBoxSEARCH.Text != "")
    {
    for (int i = 0; i < ListView1.Items.Count; i++)
    {
    for (int j = 0; j < ListView1.Columns.Count; j++)
    {
    li = ListView1.Items[i].SubItems[j].Text;
    bool a = li.Contains(TextBoxSEARCH.Text);
    if (a == true)
    {
    // li = ListView1.Items[i].SubItems[j].Text;
    ListView2.Items.Add(li);


    }
    }


    }
    }

    else
    {
    ListView2.Items.Clear();

    }

    }


    private void TextBoxSEARCH_TextChanged_1(object sender, EventArgs e)
    {


    }









    }
    }
    شما li رو Add می کنید که یک SubItem ئه، باید بجای li اون ListView1.Items[i] رو Add کنید که Item ئه و شامل همه SubItem ها هم میشه.
    خودش رو هم نه، یک کپی اش رو، با Clone ازش کپی میگیرید.
    بعد Add کردن هم یک ;break اضافه کنید تا از حلقه for j خارج بشه.

    private void TextBoxSEARCH_TextChanged(object sender, EventArgs e)
    {
    ListView2.Items.Clear();
    if (TextBoxSEARCH.TextLength == 0)
    {
    return;
    }
    for (int i = 0; i < ListView1.Items.Count; i++)
    {
    for (int j = 0; j < ListView1.Columns.Count; j++)
    {
    li = ListView1.Items[i].SubItems[j].Text;
    bool a = li.Contains(TextBoxSEARCH.Text);
    if (a)
    {
    ListView2.Items.Add((ListViewItem)ListView1.Items[i].Clone());
    break;
    }
    }
    }
    }

  10. #10
    کاربر دائمی آواتار alinoori76
    تاریخ عضویت
    مهر 1388
    محل زندگی
    کرمان
    پست
    136

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    با سپاس فراوان از لطف شما و راهنمایی دقیقتون .

    11
    نقل قول نوشته شده توسط the king مشاهده تاپیک
    شما li رو Add می کنید که یک SubItem ئه، باید بجای li اون ListView1.Items[i] رو Add کنید که Item ئه و شامل همه SubItem ها هم میشه.
    خودش رو هم نه، یک کپی اش رو، با Clone ازش کپی میگیرید.
    بعد Add کردن هم یک ;break اضافه کنید تا از حلقه for j خارج بشه.

    private void TextBoxSEARCH_TextChanged(object sender, EventArgs e)
    {
    ListView2.Items.Clear();
    if (TextBoxSEARCH.TextLength == 0)
    {
    return;
    }
    for (int i = 0; i < ListView1.Items.Count; i++)
    {
    for (int j = 0; j < ListView1.Columns.Count; j++)
    {
    li = ListView1.Items[i].SubItems[j].Text;
    bool a = li.Contains(TextBoxSEARCH.Text);
    if (a)
    {
    ListView2.Items.Add((ListViewItem)ListView1.Items[i].Clone());
    break;
    }
    }
    }
    }

  11. #11

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    سلام. اصلا نیاز به این همه کد و دوتا لیست ویو ندارید برای جستجوی یک آیتم در لیست ویو . آیتم هاتون اگه توی دیتا بیس هست کافیه فیلترش کنید و اونهایی که فیلتر شدن رو در لیستتون نمایش بدید همین.
    واگه هم دیتابیسی در کار نیست و یک لیست ویو دارید که اطلاعاتتون رو به صورت موقت ذخیره می کنه میتونید آیتم هایی که جستجو شده رو Select کنید و متودی هم برای نمایش آیتم جستجو شده خود لیست ویو داره.
    وگر نه که هیچی!!!
    آخرین ویرایش به وسیله ROSTAM2 : دوشنبه 25 آذر 1398 در 10:08 صبح

  12. #12
    کاربر دائمی آواتار alinoori76
    تاریخ عضویت
    مهر 1388
    محل زندگی
    کرمان
    پست
    136

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    سلام . تشکر من دیتا بیس ندارم لطف دارید.

  13. #13
    کاربر دائمی آواتار alinoori76
    تاریخ عضویت
    مهر 1388
    محل زندگی
    کرمان
    پست
    136

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    سلام بیزحمت اگه مشکلی نیست متدی که برای جستجو در لیست ویو بدون دیتا بیس استفاده میشه رو بزارید که داخل همین لیست ویو نمایش بدهد و نیاز به لیست ویو دوم نباشد. پیشاپیش تشکر


    نقل قول نوشته شده توسط ROSTAM2 مشاهده تاپیک
    سلام. اصلا نیاز به این همه کد و دوتا لیست ویو ندارید برای جستجوی یک آیتم در لیست ویو . آیتم هاتون اگه توی دیتا بیس هست کافیه فیلترش کنید و اونهایی که فیلتر شدن رو در لیستتون نمایش بدید همین.
    واگه هم دیتابیسی در کار نیست و یک لیست ویو دارید که اطلاعاتتون رو به صورت موقت ذخیره می کنه میتونید آیتم هایی که جستجو شده رو Select کنید و متودی هم برای نمایش آیتم جستجو شده خود لیست ویو داره.
    وگر نه که هیچی!!!

  14. #14
    کاربر دائمی
    تاریخ عضویت
    تیر 1391
    پست
    1,024

    نقل قول: انتقال یک آیتم با subItems هایش به listview دیگر

    نقل قول نوشته شده توسط alinoori76 مشاهده تاپیک
    سلام بیزحمت اگه مشکلی نیست متدی که برای جستجو در لیست ویو بدون دیتا بیس استفاده میشه رو بزارید که داخل همین لیست ویو نمایش بدهد و نیاز به لیست ویو دوم نباشد. پیشاپیش تشکر
    شما باید خارج از اون ListView همه ListViewItem هایی که دارید نگهدارید، مثلا در یک متغیر از نوع <List<ListViewItem مثلا ()<private _list = new List<ListViewItem و هر وقتی آیتمی به ListView اضافه می کنید، مثلا با اون دکمه ButtonVOROOD_Click، علاوه بر اینکه آیتم رو به ListView1 اضافه می کنید به list_ هم اضافه کنید، یعنی همراه ListView1.Items.Add(a) کد list.Items.Add(a)_ رو هم اجرا کنید.
    اینطوری شما همیشه لیست همه آیتم ها رو، چه نمایش داده شده باشن و چه نمایش داده نشده باشن رو داخل list_ دارید.
    حالا وقتی می خواهید جستجو کنید، بجای ListView1.Items سراغ list_ میروید و داخل list_ رو میگردید، مثلا بجای ListView1.Items[i].SubItems[j] از list[i].SubItems[j]_ استفاده می کنید.

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

  1. ایجاد یا حذف ایتم در ListView از طریق موبایل
    نوشته شده توسط ravangard در بخش برنامه نویسی موبایل در Delphi
    پاسخ: 0
    آخرین پست: یک شنبه 23 مهر 1396, 13:22 عصر
  2. پاسخ: 0
    آخرین پست: یک شنبه 13 تیر 1395, 12:29 عصر
  3. سوال: نمایش داده نشدن تمام آیتم های listview
    نوشته شده توسط bahman026 در بخش C#‎‎
    پاسخ: 0
    آخرین پست: پنج شنبه 20 آذر 1393, 20:56 عصر
  4. حذف آیتم های ListView سفارشی از درون برنامه
    نوشته شده توسط meysam jahedi در بخش Android Studio
    پاسخ: 6
    آخرین پست: دوشنبه 12 آبان 1393, 23:52 عصر

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

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