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

نام تاپیک: مشکلی در استفاده از چک باکس لیست

  1. #1

    مشکلی در استفاده از چک باکس لیست

    343.jpg
    سلام به دوستان
    همانطور توعکس می بینید میخوام زمانی که هر یک از ایتم های چک لیست باکس انتخاب شد مقدار اون در لیست باکس روبروش نمایش داده بشه وهرموقع هر یک از آیتم های چک باکس از حالت انتخاب خارج شدمقدار اون از لیست باکس حدف بشه
    خیلی فوریه

  2. #2

    نقل قول: مشکلی در استفاده از چک باکس لیست

    کسی بلد چی بنویسم کجا تو کدوم رویداد
    لطفا کمک کنید

  3. #3

    نقل قول: مشکلی در استفاده از چک باکس لیست

    از رویداد آیتم چک استفاده کنید
            private void checkedListBox1_ItemCheck(object sender, ItemCheckEventArgs e)
    {
    if (e.NewValue == CheckState.Checked && !listBox1.Items.Contains(checkedListBox1.Items[e.Index]))
    listBox1.Items.Add(checkedListBox1.Items[e.Index]);
    else if (e.NewValue == CheckState.Unchecked && listBox1.Items.Contains(checkedListBox1.Items[e.Index]))
    listBox1.Items.Remove(checkedListBox1.Items[e.Index]);
    }

  4. #4

    نقل قول: مشکلی در استفاده از چک باکس لیست

    نقل قول نوشته شده توسط mehdy.programmer مشاهده تاپیک
    دوست عزیز می تونی برای رویداد checkedchanged چک باکس هات از این کد استفاده کنی:

    if (checkBox1.Checked == true)
    {
    listBox1.Items.Add(checkBox1.Name);
    }
    else
    {
    listBox1.Items.Remove(checkBox1.Name);
    }

    البته برای اینکه حجم کدهات بالا نره ،می تونی خودت با یکم خلاقیت و استفاده از یه متد ،حجم کدهاتو بیاری پایین!
    فکر کنم ایشون منظورش از "چک باکس لیست" چک لیست باکس بوده! که کد شما مربوط به چک باکس هست.

  5. #5

    نقل قول: مشکلی در استفاده از چک باکس لیست

    ممنون این روشی که گفتید تو چک باکس لیست هم جواب می ده؟

  6. #6

    نقل قول: مشکلی در استفاده از چک باکس لیست

    اگر منظور شما از "چک باکس لیست" چک لیست باکس هست بله دیگه به کدها نگاه کنید میفهمید. اگر امتحان میکردید نیازی به پرسش دوباره نبود. همانطور که گفتم از رویداد آیتم چک مربوط به چک لیست باکس استفاده کنید.

  7. #7

    نقل قول: مشکلی در استفاده از چک باکس لیست

    سلام میخوام هرکدوم انتخاب شد این طوری تو لیست باکس نمایش بده مثلا 20 که انتخاب کردم 20/05/1390 بشه این رو تو add اضافه کردم شد

    "1390/05/"
    + chlist_date.Items[e.Index]

    اما زمانی که تیک برمی دارم از لیست کم نمی شه باید تو remove چی بنویسم

  8. #8

    نقل قول: مشکلی در استفاده از چک باکس لیست

    توی کد پست3 هر جا
    checkedListBox1.Items[e.Index]
    دیدی به جاش
    "1390/05/" + chlist_date.Items[e.Index]
    بزار.

  9. #9

    نقل قول: مشکلی در استفاده از چک باکس لیست

    و یه مورد دیگه ، حالا اطلاعات داخل لیست باکس به صورت تاریخ تو بانک ذخیره شدن ،حالا اگر بخوام اون ها رو از تو بانک بخونم وبریم تو لیست باکس مشکلی نیست ولی چطوری می تونم بگم که اون مورد ها تو چک باکس لیست هم تیک بخوره؟

  10. #10

    نقل قول: مشکلی در استفاده از چک باکس لیست

    خیلی ممنونم از جواب های خوبتون
    به نظر شما برای ذخیره تاریخ ها تو بانک به تعداد تاریخ ها فیلد تو جدولم بزارم یا یه فیلد از نوع ntext بزارم؟
    اکر بخوام بگم کاربر نتونه بیشتر از 10 تا انتخاب داشته باشه چی بنویسم؟

  11. #11

    نقل قول: مشکلی در استفاده از چک باکس لیست

    برای ذخیره میتونید تاریخ رو همراه با روزهایی که انتخاب میشه رو به صورت یک رشته در بیارید (با یک کاراکتر خاص مثلا ویرگول روزها و تاریخ رو از هم جدا کنید) و بعد ذخیره کنید. برای بازیابی هم باید برحسب همون کاراکتر رشته را تفکیک کنید. بعد از بدست آوردن تاریخ و روزها میتونید تو یک حلقه تیک بزنید.
    1391/03/,5,9,15

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

    نقل قول: مشکلی در استفاده از چک باکس لیست

    حرف n در نوع های داده اسکیو ال به معنای پشتیبانی حروف unicode فارسی()است
    فکرکنم nVarChar(20)کافی باشه
    برای تعداد 10 مورد در رویداد checkedListBox1_ItemCheck شرط بزار برای تعداد.

  13. #13

    نقل قول: مشکلی در استفاده از چک باکس لیست

    نقل قول نوشته شده توسط mafaman2003 مشاهده تاپیک
    برای ذخیره میتونید تاریخ رو همراه با روزهایی که انتخاب میشه رو به صورت یک رشته در بیارید (با یک کاراکتر خاص مثلا ویرگول روزها و تاریخ رو از هم جدا کنید) و بعد ذخیره کنید. برای بازیابی هم باید برحسب همون کاراکتر رشته را تفکیک کنید. بعد از بدست آوردن تاریخ و روزها میتونید تو یک حلقه تیک بزنید.
    1391/03/,5,9,15
    اخه من میخوام هر تاریخ به صورت مجزا تو لیست باکس باشه
    و با اون موردی که گفتید تو بازیابی هم این کا رو نمی شه کرد

    میشه کدشو بزارید؟ممنون میشم

  14. #14
    کاربر دائمی آواتار hamed_hossani
    تاریخ عضویت
    بهمن 1388
    محل زندگی
    بوشهر
    پست
    651

    نقل قول: مشکلی در استفاده از چک باکس لیست

    هر رشته یک متد داره به نام split
    string.split(',');

    ("رشته").split(',');

    رشته ها رو تفکیک کن و در یک ارایه بریز و بعد خانه های ارایه رو بریز هر جا که خاستی.

    string[] arrTemp =("field").split(',');

  15. #15

    نقل قول: مشکلی در استفاده از چک باکس لیست

    نقل قول نوشته شده توسط shahin60 مشاهده تاپیک
    اخه من میخوام هر تاریخ به صورت مجزا تو لیست باکس باشه
    و با اون موردی که گفتید تو بازیابی هم این کا رو نمی شه کرد

    میشه کدشو بزارید؟ممنون میشم
    اون پاسخ برای سوالی بود که شما کردید که چطور در دیتابیس(یا هر چیز دیگه) ذخیره کنید که من گفتم نیازی نیست به تعداد روزها (31) ، بیایید توی جدول دیتابیس ستون ایجاد کنید بلکه میتونید یک ستون از نوع varchar تعریف کنید. و اینکه تاریخ رو به همراه روزهایی که در چک لیست باکس تیک خوردند به صورت یک رشته دربیارید و در این ستون جدول ذخیره کنید.
    برای بازیابی و اعمال اون روی چک لیست باکس، مقداری که در دیتابیس ذخیره شده رو سلکت میکنید و رشته رو تفکیک کنید و روی چک لیست باکس اعمال کنید
            string st = "1391/03/,5,7,14";
    private void button4_Click(object sender, EventArgs e)
    {
    List<string> items = new List<string>(st.Split(','));
    items.RemoveAt(0);
    foreach ( string s in items)
    checkedListBox1.SetItemChecked(checkedListBox1.Ite ms.IndexOf(s) , true);
    items = null;
    }
    در اینجا من st رو با یک مثال پر کردم ، شما باید از مقداری که در دیتابیس ذخیره شده پرش کنید.

  16. #16
    کاربر دائمی آواتار barnamenevisforme
    تاریخ عضویت
    بهمن 1390
    محل زندگی
    تهران،شیراز و میشه گفت تقریبا همه جای ایران
    پست
    683

    نقل قول: مشکلی در استفاده از چک باکس لیست

    سلام
    هر دو روش جواب میده.
    اگه یه فیلد از نوع ntext (در acceess) و یا از نوع nvarchar(در sql) انتخاب کنید بهتره،البته باید یه کد قراردادی برای خودتون قرار بدید که مثلا بین هر item تاریخ،یه ","بذاری و ذخیره کنی.
    موقع بازخوانی از بانک و اعمال اون در برنامه،باید این کد رو دیکد کنی و هر مقدار رو توی یه آرایه ذخیره کنی.
    با داشتن یه فیلد،واسه update و یا delete هم راحتتری.چون مقدار آرایه ها رو دوباره جمع میزنی،کد میکنی،میذاری توی یه فیلد.
    روش دوم:
    استفاده از جدول رابطه ای یک به چند
    فیلد تاریخ های انتخاب شده مربوط به این جدول رو در خودش قرار ندی،یه جدول دیگه بساز،از طریق forien key متصل کن به جدول اول و تاریخ ها رو توی اون نگهداری کن.

  17. #17

    نقل قول: مشکلی در استفاده از چک باکس لیست

    نقل قول نوشته شده توسط mafaman2003 مشاهده تاپیک
    اون پاسخ برای سوالی بود که شما کردید که چطور در دیتابیس(یا هر چیز دیگه) ذخیره کنید که من گفتم نیازی نیست به تعداد روزها (31) ، بیایید توی جدول دیتابیس ستون ایجاد کنید بلکه میتونید یک ستون از نوع varchar تعریف کنید. و اینکه تاریخ رو به همراه روزهایی که در چک لیست باکس تیک خوردند به صورت یک رشته دربیارید و در این ستون جدول ذخیره کنید.
    برای بازیابی و اعمال اون روی چک لیست باکس، مقداری که در دیتابیس ذخیره شده رو سلکت میکنید و رشته رو تفکیک کنید و روی چک لیست باکس اعمال کنید
     string st = "1391/03/,5,7,14";
    private void button4_Click(object sender, EventArgs e)
    {
    List<string> items = new List<string>(st.Split(','));
    items.RemoveAt(0);
    foreach ( string s in items)
    checkedListBox1.SetItemChecked(checkedListBox1.Ite ms.IndexOf(s) , true);
    items = null;
    }
    در اینجا من st رو با یک مثال پر کردم ، شما باید از مقداری که در دیتابیس ذخیره شده پرش کنید.

    دوست عزیز اینجا تیک خوردن چک لیست باکس رو متوجه شدم ولی چطوری لیست باکس پر می شه؟کد رو متوجه نشدم؟

  18. #18

    نقل قول: مشکلی در استفاده از چک باکس لیست

    من باید دو نوع جستجو داشته باشم یکی بر اساس روز وماه ویکی بر اساس ماه حالا که یه رشتخ شده چطوری این کارو بکنم

  19. #19

    نقل قول: مشکلی در استفاده از چک باکس لیست

    متوجه شدم حتما به خاطر کدهای داخل chech itme هست.
    در مورد جستجو چی؟

  20. #20

    نقل قول: مشکلی در استفاده از چک باکس لیست

    نقل قول نوشته شده توسط shahin60 مشاهده تاپیک
    من باید دو نوع جستجو داشته باشم یکی بر اساس روز وماه ویکی بر اساس ماه حالا که یه رشتخ شده چطوری این کارو بکنم
    میتونید سه ستون داشته باشید یکی برای سال یکی برای ماه و یکی هم برای روزهای انتخابی و برای ذخیره هم میایید روزها رو به یک رشته تبدیل میکنید
    1391       03        5,12,3,14
    برای جستجو براساس ماه یا سال که ساده است .برای جستجو براساس ماه یا سال با روز به اینصورت میتونید عمل کنید
    select * from dbo.tbl where year='سال' and month='ماه' and day like '%روز%'

  21. #21

    نقل قول: مشکلی در استفاده از چک باکس لیست

    سلام دوست عزیز
    حالا به یه مشکل دیگه برخوردم
    زمانی که اطلاعات روز ها فراخوانی میشه چک باکس لیست تیک می خوره وروزهای متناظر تو لیست باکس قرار می گیرن فقط نمی دونم چطور باید اون رشته روز ها رو بدست بیارم (منظورم اینکه روز جدیدی به رشته اضافه کنم ویا زمانی که تیک یه روز برداشتم از رشته روز ها اون رو کم کنه اصلا ایجاد یه رشته از مقادیر چکس باکس لیست چطوریه؟-ویه نکته زمانی که عمل split انجام می شه داده اولی نمایش داد نمی شه؟
    ممنون میشه کمک کنید.

  22. #22

    نقل قول: مشکلی در استفاده از چک باکس لیست

    با همون حلقه مقادیری که چک خوردن رو میخونی و تبدیل به یک رشته میکنی کاری نداره.
    برای اینکه مقادیری که از دیتابیس خوندی و روی چک لیست باکس اعمال کردی ، اگر بخوای تغییر بدی باید رشته رو دوباره ایجاد کنی و اون سطر دیتابیس رو آپدیت کنی.
    در مورد split هم کدتون رو قرار بدید.

  23. #23

    نقل قول: مشکلی در استفاده از چک باکس لیست

    نقل قول نوشته شده توسط mafaman2003 مشاهده تاپیک
    با همون حلقه مقادیری که چک خوردن رو میخونی و تبدیل به یک رشته میکنی کاری نداره.
    برای اینکه مقادیری که از دیتابیس خوندی و روی چک لیست باکس اعمال کردی ، اگر بخوای تغییر بدی باید رشته رو دوباره ایجاد کنی و اون سطر دیتابیس رو آپدیت کنی.
    در مورد split هم کدتون رو قرار بدید.
    میشه کدشو بزاری ممنون میشم؟
    برا split همون کدی که گفتید
    رشته اینه ,03,05,11,25
    آخرین ویرایش به وسیله shahin60 : سه شنبه 30 خرداد 1391 در 17:36 عصر

  24. #24

    نقل قول: مشکلی در استفاده از چک باکس لیست


  25. #25

    نقل قول: مشکلی در استفاده از چک باکس لیست

    باتشکر از راهنمایی هاتون
    من اطلاعات داخل لیست باکس رو ترکیب کزدم
    اینطوری می نویسه
    1390/02/01
    1390/02/12

    حالا اون کدی که تو برنامه بود رو چطوری تغییر بدم:
              label3.ResetText();
    foreach (string item in listBox1.Items)
    {
    if (label3.Text == string.Empty)
    label3.Text = item;
    else
    label3.Text += "," + item;
    }


    و یه مشکل دیگه بانک برنامه باز نشد چه ورژنیه؟
    عکس های ضمیمه عکس های ضمیمه

  26. #26

    نقل قول: مشکلی در استفاده از چک باکس لیست

    به نظر من ذخیره سازی رو با همون فرمت قبل انجام بدید بهتره و حجم کمتری اشغال میکنه ، فقط زمانی که میخواد به لیست باکس اضافه بشه سال و ماه رو هم بهش اضافه کنید.
    دیتابیس هم sqlexpress2008 هست. چیز خاصی نداره یک جدول با ستون هایی که میبینید

  27. #27

    نقل قول: مشکلی در استفاده از چک باکس لیست

    همونطوری روزها رو ذخیره می کنم ولی میخوام به کاربر اینطوری تو لیست باکس نشون بده
    حالا روزها رو چطور ازش بکشم بیرون؟
    یا بهتر نیست از چک لیست باکس ،روزها رو بگیرم؟

  28. #28

    نقل قول: مشکلی در استفاده از چک باکس لیست

    کافیه فقط کد رویداد ItemCheck رو به این صورت اصلاح کنی
            private void checkedListBox1_ItemCheck(object sender, ItemCheckEventArgs e)
    {
    if (e.NewValue == CheckState.Checked)
    {
    listBox1.Items.Add(label1.Text + "\\" + label2.Text + "\\" + checkedListBox1.Items[e.Index]);

    if (e.NewValue == CheckState.Checked)
    if (label3.Text == string.Empty)
    label3.Text = checkedListBox1.Items[e.Index].ToString();
    else
    label3.Text += "," + checkedListBox1.Items[e.Index].ToString();
    }
    else if (e.NewValue == CheckState.Unchecked)
    {
    listBox1.Items.Remove(label1.Text + "\\" + label2.Text + "\\" + checkedListBox1.Items[e.Index]);

    label3.Text = label3.Text.Replace(checkedListBox1.Items[e.Index].ToString(), "").Replace(",,", ",");
    if (label3.Text.StartsWith(","))
    label3.Text = label3.Text.Substring(1);
    if (label3.Text.EndsWith(","))
    label3.Text = label3.Text.Substring(0, label3.Text.Length - 1);
    }
    }
    تابع itemstostring رو هم کلا پاک کنید.
    آخرین ویرایش به وسیله Mahmoud.Afrad : پنج شنبه 01 تیر 1391 در 01:43 صبح

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

  1. استفاده از چک باکس
    نوشته شده توسط jamalm در بخش Classic ASP
    پاسخ: 0
    آخرین پست: یک شنبه 06 بهمن 1387, 00:22 صبح
  2. استفاده از یک دیتا لیست در یک دیتالیست دیگر
    نوشته شده توسط hamidnet در بخش ASP.NET Web Forms
    پاسخ: 0
    آخرین پست: جمعه 13 مهر 1386, 02:10 صبح
  3. استفاده از یک دیتا لیست در یک دیتالیست دیگر
    نوشته شده توسط hamidnet در بخش ASP.NET Web Forms
    پاسخ: 0
    آخرین پست: سه شنبه 23 مرداد 1386, 18:27 عصر
  4. نمایش تقویم با استفاده از تکس باکس
    نوشته شده توسط tayebeh در بخش ASP.NET Web Forms
    پاسخ: 0
    آخرین پست: دوشنبه 21 خرداد 1386, 11:15 صبح
  5. استفاده از کمبو باکس ولی بدون رکورد تکراری
    نوشته شده توسط AHMAD-AHMAD در بخش Access
    پاسخ: 6
    آخرین پست: چهارشنبه 02 اسفند 1385, 11:25 صبح

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

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