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

نام تاپیک: چک کردن خالی بودن سلولهایی از DataGridView

  1. #1
    کاربر دائمی آواتار unique1984
    تاریخ عضویت
    دی 1384
    محل زندگی
    Newjef Land
    سن
    39
    پست
    221

    Question چک کردن خالی بودن سلولهایی از DataGridView

    سلام
    من یک دیتا گریدویو دارم که در ابتدا به هیچ بانکی متصل نیست و میتونم اطلاعات رو در اون وارد کنم و در جایی ثبت کنم.
    علاوه بر اون میتونم مثلا با کلیک روی یه باتن ، اطلاعاتی رو بر اساس یکسری شرط در این گرید بریزم و در واقع بانکی رو به گرید بایند کنم.
    از اونجایی که اطلاعات در خود گرید وارد میشه ، بعضی از سلولها نباید بدون مقدار بمونند.
    من در رویداد CellLeave دیتاگریدویو مقدار این سلول رو بررسی میکنم. حالا مسله اینه که نمیدونم این جای خالی رو یه رشته خالی ("") تلقی میکنه یا Null !!! چون در هر صورت خطای اکسپشن میده!!
    تصور من اینه که زمانیکه بانکی به گرید متصل نیست این جای خالی رو Null در نظر میگیره و زمانی که به بانک متصله یه یک رشته خالی!!!
    حالا نمیدونم چطور این مسله رو حل کنم که در صورت خالی بودن سلولی خاص ارور بده یا به همون سلول برگرده!

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

    نقل قول: چک کردن خالی بودن سلولهایی از DataGridView

    چرا از تکست باکس برای مقدار دادن به جدولتون استفاده نمی کنید ؟
    اون طوری کنترلش آسون تر

  3. #3
    کاربر دائمی آواتار unique1984
    تاریخ عضویت
    دی 1384
    محل زندگی
    Newjef Land
    سن
    39
    پست
    221

    نقل قول: چک کردن خالی بودن سلولهایی از DataGridView

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

  4. #4

    نقل قول: چک کردن خالی بودن سلولهایی از DataGridView

    String.Empty رو امتحان کردی؟

  5. #5
    کاربر دائمی آواتار unique1984
    تاریخ عضویت
    دی 1384
    محل زندگی
    Newjef Land
    سن
    39
    پست
    221

    نقل قول: چک کردن خالی بودن سلولهایی از DataGridView

    نقل قول نوشته شده توسط Afshin_Zavar مشاهده تاپیک
    String.Empty رو امتحان کردی؟
    من این کد رو برای textbox تست کردم ، درست عمل میکنه و مشکلی نداره
    if ((string.IsNullOrEmpty(textBox1.Text))) MessageBox.Show("this is null");

    البته اگه space بزنیم دیگه اونو خالی در نظر نمیگیره.
    اما همین کدو اگه برای گرید به کار ببرم خطای اکسپشن میده(Object reference not set to an instance of an object.)
    private void dataGridView1_CellLeave(object sender, DataGridViewCellEventArgs e)
    {
    if (!(string.IsNullOrEmpty(dataGridView1.CurrentRow.C ells[0].Value.ToString()))) MessageBox.Show("this is null");
    }

  6. #6

    نقل قول: چک کردن خالی بودن سلولهایی از DataGridView

    البته اگه space بزنیم دیگه اونو خالی در نظر نمیگیره.
    علت اینه که از Trim استفاده نمیکنی

    if ( textBox1.Text.Trim() == String.Empty )
    {
    }
    من توی MSDN یه جستجو کردم احتمالا اینا به دردت میخورن

    private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
    {
    if( dataGridView1.Columns[e.ColumnIndex].Name.Contains("Firstname"))
    if (String.IsNullOrEmpty(e.FormattedValue.ToString()))
    {
    dataGridView1.Rows[e.RowIndex].ErrorText = "ستون نام خالی است";
    e.Cancel = true;
    }
    }
    //---------------------------------------------------------------

    private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
    {
    dataGridView1.Rows[e.RowIndex].ErrorText = String.Empty;
    }
    ضمنا به حرف اول دقت کن. باید از String استفاده کنی نه string. (حرف اول اسامی کلاسها باید uppercase باشه)
    ضمن اینکه در متد leave که پارامتر DataGridViewCellEventArgs e داره دفت کن. بهتره به جای بدست آوردن سطر جاری، از این پارامتر استفاده کنی. که در بالا نوشتم

  7. #7
    کاربر دائمی آواتار hasan_esfahan
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    اصفهان
    پست
    419

    نقل قول: چک کردن خالی بودن سلولهایی از DataGridView


    privatevoid dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
    {
    try
    {
    string ch = dataGridView1.CurrentRow.Cells[0].Value.ToString();
    MessageBox.Show("مشکلی نیست");
    }
    catch
    {
    MessageBox.Show("فیلد خالی است");
    }

    }

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

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