Тільки цифри

Англійська мова - через (.)

Українська мова - через (,)

Цифри і одну точку

     void PreviewTextInput(object sender, TextCompositionEventArgs e){

          // Конвертуємо введену букву е в char

          char ch = e.Text[0];   

          if ((Char.IsDigit(ch) || ch == '.'))

          {

               if (ch == '.' && textBox.Text.Contains('.'))   // лише одна крапка

               {

                    e.Handled = true;   // не пускати

               }

          }

          else

          {

               e.Handled = true;   // не пускати

          }

     }

Цифри і одну точку + не більше 2 цифр після крапки

     void PreviewTextInput(object sender, TextCompositionEventArgs e){

          // Конвертуємо введену букву е в char

          char ch = e.Text[0];   

          if ((Char.IsDigit(ch) || ch == '.'))

          {

               int a = TB2.Text.IndexOf('.');

               if (ch == '.' && a != -1)   // лише одна крапка

               {

                    e.Handled = true;   // не пускати

               }

               if (a != -1 && TB2.Text.Length == a+3)   // до 2 цифр після коми

               {

                    e.Handled = true;   // не пускати

               }

          }

          else

          {

               e.Handled = true;   // не пускати

          }

     }

    

Лише цифри

     void PreviewTextInput(object sender, TextCompositionEventArgs e){

          char ch = e.Text[0];

          if (!(Char.IsDigit(ch)))

          {

                   e.Handled = true;   // не пускати

          }

     }

Через регулярний вираз

     using System.Text.RegularExpressions;

     void PreviewTextInput(object sender, TextCompositionEventArgs e){

          e.Handled = new Regex("[^0-9]+").IsMatch(e.Text);

     }