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

نام تاپیک: کمبوباکس در دیتاگریدویو

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

    کمبوباکس در دیتاگریدویو

    سلام

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

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

    میخوام با زدن دکمه "ثبت" Id گزینه های انتخابی هر کدوم از کمبوها و همینطور چک باکسم در جدول واسطم ذخیره بشه...

    این د رو نشوتم اما درست کار نمیکنه و پیغام خطا میده
    #
    privatevoid dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
    {
    if (e.ColumnIndex == dataGridView1.Columns["cmb_Position"].DisplayIndex)
    {
    objDamageCntr.DamagePosition_Id =
    int.Parse(cmb_Position.DisplayIndex.ToString());
    }
    if (e.ColumnIndex == dataGridView1.Columns["cmb_Damage"].DisplayIndex)
    {
    objDamageCntr.Damage_Id =
    int.Parse(cmb_Damage.DisplayIndex.ToString());
    }
    if (e.ColumnIndex == dataGridView1.Columns["Is_Services"].DisplayIndex)
    {
    objDamageCntr.Is_Services =
    true;
    }
    }
    #

    کجای کارم اشتباه است؟؟؟ ممنو نمیشم راهنمایی کنید

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

    نقل قول: کمبوباکس در دیتاگریدویو

    q.jpg اینم دیتاگرید من

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

    نقل قول: کمبوباکس در دیتاگریدویو

    کسی نیست راهنمایی کنه؟؟

  4. #4

    نقل قول: کمبوباکس در دیتاگریدویو

    سلام دوست عزیز
    اولا کدت رو تو رخداد CellContentClick بنویس. سپس if هاتو به این تغییر بده ببین جواب میگیری؟

    if (e.ColumnIndex == dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString().Trim())
    برای بعدیا هم یکی به cell[] اضافه کن. موفق باشی

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

    نقل قول: کمبوباکس در دیتاگریدویو

    نقل قول نوشته شده توسط homayon_azizi مشاهده تاپیک
    سلام دوست عزیز
    اولا کدت رو تو رخداد CellContentClick بنویس. سپس if هاتو به این تغییر بده ببین جواب میگیری؟
    برای بعدیا هم یکی به cell[] اضافه کن. موفق باشی
    ممنون از پاسختون دوست عزیز

    تفاوت CellClick , CellContentClick چیه؟
    و اینکه
    if (e.ColumnIndex == dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString().Trim())



    columnIndex یه مقدار int داره اما قسمت دوم String و این تیکه کد اصلا کار نمیکنه

  6. #6
    کاربر دائمی
    تاریخ عضویت
    آذر 1387
    محل زندگی
    تهران
    پست
    152

    نقل قول: کمبوباکس در دیتاگریدویو

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

    privatevoid dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
    {
    if(e.RowIndex<0)
    return;
    for (int i = 0; i < dataGridView1.Rows.Count; i++)
    {
    objDamageCntr.DamagePosition_Id =
    Convert.ToInt32(dataGridView1.Rows[0].Cells["cmb_Position"].Value);
    objDamageCntr.Damage_Id =
    Convert.ToInt32(dataGridView1.Rows[0].Cells["cmb_Damage"].Value);
    objDamageCntr.Is_Services =
    Convert.ToBoolean(dataGridView1.Rows[0].Cells["Is_Services"].Value);
    objDamageCntr.DamageEvent_Id = 13;
    }

    و برای ذخیره هم یه کلاس نوشتم و در صورتیکه روی باتن کلیک بشه اون اجرا میشه

    privatevoid dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
    {
    if (e.ColumnIndex == dataGridView1.Columns["btn_Add"].Index && e.Button == MouseButtons.Left)
    {
    objDamageCntr.Save();
    }

    }

    اگه به این صورت بنویسم پیغام خطا میده

    privatevoid dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
    {
    if(e.RowIndex<0)
    return;
    for (int i = 0; i < dataGridView1.Rows.Count; i++)
    {
    objDamageCntr.DamagePosition_Id =
    Convert.ToInt32(dataGridView1.Rows[i].Cells["cmb_Position"].Value);
    objDamageCntr.Damage_Id =
    Convert.ToInt32(dataGridView1.Rows[i].Cells["cmb_Damage"].Value);
    objDamageCntr.Is_Services =
    Convert.ToBoolean(dataGridView1.Rows[i].Cells["Is_Services"].Value);
    objDamageCntr.DamageEvent_Id = 13;
    }


    دوستان اگه ممکنه کمک کنید کارم واقعا گیره این مضووع هست

  7. #7

    نقل قول: کمبوباکس در دیتاگریدویو

    نقل قول نوشته شده توسط raziyehbazargan مشاهده تاپیک
    ممنون از پاسختون دوست عزیز

    تفاوت CellClick , CellContentClick چیه؟
    و اینکه
    if (e.ColumnIndex == dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString().Trim())



    columnIndex یه مقدار int داره اما قسمت دوم String و این تیکه کد اصلا کار نمیکنه

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

  8. #8

    نقل قول: کمبوباکس در دیتاگریدویو

    میشه error برنامتو بذاری ببینم اررورش چیه؟

  9. #9

    نقل قول: کمبوباکس در دیتاگریدویو

    دوست عزیز من خودم دکمه Delete رو تو CellContentClick نوشتم هیچ مشکلی هم نداشت. شما وقتی یه بار بنویسی دیگه لازم نیست بندازیش تو for.

    کدت رو به تغییر بده ببین جواب میده؟ البته تو CellContentClick بنویس.


    objDamageCntr.DamagePosition_Id = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells["cmb_Position"].Value);
    objDamageCntr.Damage_Id = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells["cmb_Damage"].Value);
    objDamageCntr.Is_Services = Convert.ToBoolean(dataGridView1.Rows[e.RowIndex].Cells["Is_Services"].Value);
    objDamageCntr.DamageEvent_Id = 13;
    objDamageCntr.Save();

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

    نقل قول: کمبوباکس در دیتاگریدویو

    نقل قول نوشته شده توسط homayon_azizi مشاهده تاپیک
    میشه error برنامتو بذاری ببینم اررورش چیه؟
    Untitled.jpg
    این پیغام خطاش هست

  11. #11

    نقل قول: کمبوباکس در دیتاگریدویو

    نقل قول نوشته شده توسط raziyehbazargan مشاهده تاپیک
    Untitled.jpg
    این پیغام خطاش هست
    خوب شما اگه اونو تبدیل میکردین درست میشد.
    به این صورت :


    if (e.ColumnIndex == Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells[0].Value())

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

    نقل قول: کمبوباکس در دیتاگریدویو

    نقل قول نوشته شده توسط homayon_azizi مشاهده تاپیک
    دوست عزیز من خودم دکمه Delete رو تو CellContentClick نوشتم هیچ مشکلی هم نداشت. شما وقتی یه بار بنویسی دیگه لازم نیست بندازیش تو for.

    کدت رو به تغییر بده ببین جواب میده؟ البته تو CellContentClick بنویس.
    مرسی از راهنماییتون دوست عزیز

    من کد رو تغییر دادم اما بعد از هر باز زدن دکمه باتن محتویات سطر اول رو در دیتابیسم درح میکنه

    برای مشخص کردن باتنی که کلیک میشه آیا کدی که نوشتم درسته؟؟ من روی باتن دوم در سطر دوم هم که کلیک میکنم همون محتویات سطر اول رو در تیبلم درج میکنه

    privatevoid dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
    {
    if (e.ColumnIndex == dataGridView1.Columns["btn_Add"].Index && e.Button == MouseButtons.Left)
    {
    objDamageCntr.Save();
    }

    }

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

    نقل قول: کمبوباکس در دیتاگریدویو

    نقل قول نوشته شده توسط homayon_azizi مشاهده تاپیک
    خوب شما اگه اونو تبدیل میکردین درست میشد.
    به این صورت :


    if (e.ColumnIndex == Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells[0].Value())
    اینکارو انجام دادم اما باز هم خطا میگیره

  14. #14

    نقل قول: کمبوباکس در دیتاگریدویو

    اگه میشه اون قسمت از برنامت رو اینجا ضمیمه کن تا روش کار کنم. موفق باشی

  15. #15
    کاربر دائمی
    تاریخ عضویت
    آذر 1387
    محل زندگی
    تهران
    پست
    152

    نقل قول: کمبوباکس در دیتاگریدویو

    نقل قول نوشته شده توسط homayon_azizi مشاهده تاپیک
    دوست عزیز من خودم دکمه Delete رو تو CellContentClick نوشتم هیچ مشکلی هم نداشت. شما وقتی یه بار بنویسی دیگه لازم نیست بندازیش تو for.

    کدت رو به تغییر بده ببین جواب میده؟ البته تو CellContentClick بنویس.

    من به این صورت نوشتم و درج ها درست انجام میشه به جز این مورد که سطر اول دوبار در تیبلم درج میشه

    privatevoid dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
    {
    objDamageCntr.DamagePosition_Id =
    Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells["cmb_Position"].Value);
    objDamageCntr.Damage_Id =
    Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells["cmb_Damage"].Value);
    objDamageCntr.Is_Services =
    Convert.ToBoolean(dataGridView1.Rows[e.RowIndex].Cells["Is_Services"].Value);
    objDamageCntr.DamageEvent_Id = 13;
    objDamageCntr.Save();
    }

  16. #16

    نقل قول: کمبوباکس در دیتاگریدویو

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

    privatevoid dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
    {
    objDamageCntr.DamagePosition_Id =
    Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells["cmb_Position"].Value);
    objDamageCntr.Damage_Id =
    Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells["cmb_Damage"].Value);
    objDamageCntr.Is_Services =
    Convert.ToBoolean(dataGridView1.Rows[e.RowIndex].Cells["Is_Services"].Value);
    objDamageCntr.DamageEvent_Id = 13;
    objDamageCntr.Save();
    }


    فکر کنم دلیلش اینه که شما این کد رو پاک نکردی.


    privatevoid dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
    {
    if (e.ColumnIndex == dataGridView1.Columns["btn_Add"].Index && e.Button == MouseButtons.Left)
    {
    objDamageCntr.Save();
    }
    }

    آخرین ویرایش به وسیله homayon_azizi : سه شنبه 17 مرداد 1391 در 14:06 عصر

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

  1. پاسخ: 15
    آخرین پست: چهارشنبه 01 خرداد 1398, 23:24 عصر
  2. سوال: مشکل در ایجاد یه ردیف با ستون کمبوباکس در دیتاگریدویو
    نوشته شده توسط msozan در بخش C#‎‎
    پاسخ: 3
    آخرین پست: شنبه 28 فروردین 1389, 14:55 عصر
  3. طریقه ی اضافه کردن به گزینه های کمبوباکس در اینترنت اکسپلورر
    نوشته شده توسط tabib_m در بخش طراحی وب (Web Design)
    پاسخ: 14
    آخرین پست: دوشنبه 04 اردیبهشت 1385, 07:23 صبح
  4. ویرایش ایتم کمبوباکس
    نوشته شده توسط s_mm99 در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 2
    آخرین پست: جمعه 14 مرداد 1384, 05:52 صبح
  5. lockکردن کمبوباکس
    نوشته شده توسط archi در بخش VB.NET
    پاسخ: 2
    آخرین پست: سه شنبه 03 آذر 1383, 10:37 صبح

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

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