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

نام تاپیک: انتخاب واحد توسط ديتا گريد

  1. #1

    انتخاب واحد توسط ديتا گريد

    سلام و خسته نباسيد خدمت دوستان
    من يه برنامه دارم مينويسم كه داخل يكي از فرم‌هاي برنامه دانشجو بايد انتخاب واحد كنه
    (البته برنامه تحت ويندوز هست).

    داخل اين فرم قسمت بالا يك ديتا گريد گذاشتم كه درس‌هايي كه ارائه شده داخل اون نمايش داده ميشن.
    پايين هم يك دكمه گذاشتم واسه ثبت درس‌هاي انتخابي.

    حالا ميخوام چنتا قابليت خوب به برنامه ام بدم.

    سوال: ميخوام در ديتا گريد كنار هر ركورد يك چك باكس باشه كه دانشجو هر درسي رو كه ميخواد تيك بزنه در آخر توسط همون كليد پايين تمام درسها در جدول ثبت بشه (يعني هر درس توي يك ركورد ثبت بشه: ثبت هم زمان چند ركورد).

    سوال: ميخوام جدا از چك باكس يك دكمه هم كنار هر درس باشه داخل ديتا گريد ويو كه اگر بجاي تيك زدن اون دكمه رو زد، درس مورد نظر ثبت بشه.

    باتشكر

  2. #2
    کاربر دائمی آواتار morteza271
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    مشهد
    پست
    1,723

    نقل قول: انتخاب واحد توسط ديتا گريد

    خوب شما برای اینکه چک باکس بذارین باید یک ستون از نوع چک باکس به ستون های گریدتون اضافه کنید و همچنین برای کلید هم باید یه ستون از نوع کلید (Button) اضافه کنید.
    بعد در رویداد کلیک دکمه ثبت کلی تون توی یه حلقه باید چک کنید که هرکدام که تیک خورده بود رو ثبت کنه و در رویداد کلیک کلیدی که در هر سطر میذارین هم کدی بنویسید که همون سطر رو (یعنی سطر جاری) رو ثبت کنه.
    موفق باشید.

  3. #3

    نقل قول: انتخاب واحد توسط ديتا گريد

    واقعا ممنون
    تشكر

    من براي ديتا گريد ويو هم كليد گذاشتم هم چك باكس توسط راهنمايي شما.

    فقط يه چزي:
    جدول من 100تا ركورد داره، پس ديتا گريد من هم 100سطر داره. حالا كد ثبت رو بايد كجا بنويسم براي كليد ديتا گريد كه هر سطر كه كليدش كليك شد ثبت بشه.
    و نكته بعدي اينكه در كليد كلي چه‌جوري بايد كد بنويسم كه هر سطري كه چك باكس خورد ثبت بشه.

    با تشكر

  4. #4
    کاربر دائمی آواتار morteza271
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    مشهد
    پست
    1,723

    نقل قول: انتخاب واحد توسط ديتا گريد

    خواهش میکنم.

    برای کلیدی که برای هر سطر نوشتین میتونید از کد زیر استفاده کنید :
    private void dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
    {
    if (e.ColumnIndex == 12)// 12 شماره ستونی است که کلید گذاشته اید
    {
    MessageBox.Show(dataGridView1.CurrentRow.Cells[3].Value.ToString());
    // کد شما برای ثبت درس
    }
    }

    یعنی باید کدتون رو داخل رویداد CellMouseClick از گریدتون بنویسید.

    و برای کلید ثبت کلی هم میتونید از کد زیر استفاده کنید :
    private void button1_Click(object sender, EventArgs e)
    {
    for (int i = 0; i < dataGridView1.RowCount; i++)
    {
    if (dataGridView1.Rows[i].Cells[0].Value.ToString() == "True")
    {
    MessageBox.Show(dataGridView1.Rows[i].Cells[3].Value.ToString());
    // کد شما برای ثبت درس
    }
    }
    }


    موفق باشید.

  5. #5

    نقل قول: انتخاب واحد توسط ديتا گريد

    واقعا ممنونم

    مشكل اول كه واسه هر دكمه بود حل شد مرسي.

    اما واسه مورد دوم كه در كليد كلي كد نوشتين اين اررور رو ميده:

    Object reference not set to an instance of an object.

  6. #6
    کاربر دائمی آواتار morteza271
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    مشهد
    پست
    1,723

    نقل قول: انتخاب واحد توسط ديتا گريد

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

  7. #7

    نقل قول: انتخاب واحد توسط ديتا گريد

    خطا واسه اين خط هست

    if (dataGridView1.Rows[i].Cells[0].Value.ToString() == "True")

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

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