گروه برنامه نویسان گینو

با سلام


در استفاده از DGV به این نیاز داریم که  یک ستون را فیلتر کنیم به عنوان مثال در ستون تلفن یا مبالغ کاربر فقط عدد وارد کند

برای این کار می توانیم event یه textbox را به DGV نسبت دهیم

به عنوان مثال برای این که کاربر فقط عدد وارد کند می توانیم در event KeyPress ، تکست باکس این کد را بنویسم:


  private void txtMaliat_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!char.IsNumber(e.KeyChar) && !char.IsControl(e.KeyChar))
            e.Handled = true;
        }


سپس این را به event EditingControlShowing دیتاگرید نسبت دهیم:



        private void dataGridViewX2_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
        {

    TextBox text = e.Control as TextBox;
            if (dataGridViewX2.CurrentCell.ColumnIndex == dataGridViewX2.Columns["kod"].Index)

       {

                if (text != null)
                    text.KeyPress += new KeyPressEventHandler(txtMaliat_KeyPress);

            }
            else
                if (text != null)
                    text.KeyPress -= new KeyPressEventHandler(txtMaliat_KeyPress);

در شرط if ایندکس فیلدی که در حال تغییر است را با ایندکس ستونی که می خواهیم اعمال کنیم بررسی می کنیم

۹۳/۰۴/۳۰
مدیر

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی