کنترل کردن خالی نبودن محتوای TextBox و یا محدود کردن محتوای کاراکترهای آن در برنامه نویسی نکته مهمی می باشد. در بسیاری از پروژهای برنامه نویسی اتفاق می افتد که ما نیاز داریم تا ورودی TextBox روی فرم را محدود کنیم برای مثال

 در پروژه اتوماسیون حسابداری و یا انبار داری نیاز هست تا بعضی از فیلدها مانند قیمت و تعداد کالا ، فقط عدد وارد شود. گاهی در بانک اطلاعاتی فیلدی را از نوع عددی مانند Integer یا Float , Decimal , Real ایجاد میکنیم ، اگر در فرمی از برنامه ما که متصل به آن بانک اطلاعاتی است بخواهیم حروف الفبایی و یا دیگر کاراکترهای غیر عددی را وارد کنیم و در بانک ذخیره نماییم با پیغام خطا عدم ذخیره سازی از سوی بانک اطلاعاتی مواجع میشویم . برای رفع از این دست مشکلات راههای مختلفی وجود دارد

 
روش  اول که یکی از آسانترین راهها و البته نه بهترین راه، استفاده از رویداد KeyPress تکست باکس مورد نظر می باشد 
 
private void InputNumber_KeyPress(object sender, KeyPressEventArgs e)
        {
            int isNumber = 0;
            e.Handled = !int.TryParse(e.KeyChar.ToString(), out isNumber);
        }
 
 روش دوم استفاده از کامپوننت های TextBox قابل تنظیم که در آن مشخص میکنید کاربر  فقط عدد وارد کند و یا فقط حروف فارسی وارد کند  لینک دانلود یکی از این کامپوننت ها را قرار میدهم      لینک دانلود کامپوننت
 
 
 
--------------------------------------------------------------------
 
 
پس از انتشار این مطلب دوست عزیزی در قسمت نظرات قطعه کد زیر را قرار داده اند
مناسب دانستم در زیر این مطلب نظر این دوست گرامی را هم انعکاس دهم
 
با تشکر از دوستانی که  مرا از نظرات مفید خود بهره مند می سازند
 
----------
 
شاید خیلی ها دنبال کدی تو سی شارپ هستن که فقط بشه عدد و نقطه"." وارد تکست باکس کرد اینم از کد .
کافیه تو   keypress   تکست باکس کپی کنی 
 public void digitonly(KeyPressEventArgs e)
        {
                if (!(char.IsDigit(e.KeyChar) || char.IsControl(e.KeyChar) || char.IsPunctuation(e.KeyChar)))
                {
                    e.Handled = true;
                    MessageBox.Show("Enter only digit and decimal point.", "Alert!");
                }
        }