- using System; 
- using System.Linq; 
- using System.Windows.Forms; 
-   
- namespace Function 
- { 
-     /// <summary> 
-     /// События для управлением пользовательским вводом в текстбоксы 
-     /// </summary> 
-     internal class Function 
-     { 
-         /// <summary> 
-         /// добавляет 0 к содержимому текстбокса если в нем нет чисел 
-         /// используется при событии потери фокуса что бы в текстбоксе точно было число которое можно парсить       
-         /// </summary> 
-         /// <param name="sender"></param> 
-         /// <param name="e"></param> 
-         public void TbLostFocus(object sender, EventArgs e) 
-         { 
-             TextBox tTB = sender as TextBox; 
-             foreach (Char c in tTB.Text) if (Char.IsDigit(c)) return;            
-             tTB.Text += "0"; 
-         } 
-         /// <summary> 
-         /// это событие позволяет возможность вводить десятичные положительные и отрицательные числа 
-         /// </summary> 
-         /// <param name="sender"></param> 
-         /// <param name="e"></param> 
-         public void TbKeyDoubleMinus(object sender, KeyPressEventArgs e) 
-         { 
-             TextBox tTB = sender as TextBox;           
-             if (e.KeyChar == ',') e.KeyChar = '.';            
-             if (e.KeyChar == '-') 
-             { 
-                 int pos = tTB.SelectionStart; 
-                 if (tTB.Text.Contains('-')) 
-                 { 
-                     tTB.Text = tTB.Text.Substring(1); 
-                     tTB.SelectionStart = pos - 1; 
-                 } 
-                 else 
-                 { 
-                     tTB.Text = '-' + tTB.Text; 
-                     tTB.SelectionStart = pos + 1; 
-                 }  
-                 e.Handled = true; 
-                 return; 
-             } 
-             if (e.KeyChar == '.') 
-             { 
-                 if (tTB.Text.Contains('.') | (tTB.SelectionStart == 0 & tTB.Text.Contains('-'))) e.Handled = true;                
-                 return; 
-             } 
-             if (e.KeyChar == 8 ) 
-             { 
-                 if (tTB.SelectionLength > 0) 
-                 { 
-                     int pos = tTB.SelectionStart; 
-                     tTB.Text = tTB.Text.Substring(0, tTB.SelectionStart) + tTB.Text.Substring(tTB.SelectionStart + tTB.SelectionLength); 
-                     tTB.SelectionStart = pos; 
-                     e.Handled = true; 
-                 }                 
-                 return; 
-             } 
-             if (Char.IsDigit(e.KeyChar)) 
-             {  
-                 if (tTB.Text.Contains('-') & tTB.SelectionStart == 0) e.Handled = true; 
-                 return; 
-             } 
-             e.Handled = true; 
-         } 
-         /// <summary> 
-         /// это событие позволяет вводить десятичные положительные числа 
-         /// </summary> 
-         /// <param name="sender"></param> 
-         /// <param name="e"></param> 
-         public void TbKeyDouble(object sender, KeyPressEventArgs e) 
-         { 
-             TextBox tTB = sender as TextBox; 
-             if (e.KeyChar == ',') e.KeyChar = '.'; 
-             if (e.KeyChar == '.') 
-             { 
-                 if (tTB.Text.Contains('.') | (tTB.SelectionStart == 0 & tTB.Text.Contains('-'))) e.Handled = true; 
-                 return; 
-             } 
-             if (e.KeyChar == 8) 
-             { 
-                 if (tTB.SelectionLength > 0) 
-                 { 
-                     int pos = tTB.SelectionStart; 
-                     tTB.Text = tTB.Text.Substring(0, tTB.SelectionStart) + tTB.Text.Substring(tTB.SelectionStart + tTB.SelectionLength); 
-                     tTB.SelectionStart = pos; 
-                     e.Handled = true; 
-                 } 
-                 return; 
-             } 
-             if (Char.IsDigit(e.KeyChar)) 
-             { 
-                 if (tTB.Text.Contains('-') & tTB.SelectionStart == 0) e.Handled = true; 
-                 return; 
-             } 
-             e.Handled = true; 
-         } 
-         /// <summary> 
-         /// это событие позволяет вводить целые положительные и отрицательные числа 
-         /// </summary> 
-         /// <param name="sender"></param> 
-         /// <param name="e"></param> 
-         public void TbKeyIntegerMinus(object sender, KeyPressEventArgs e) 
-         { 
-             TextBox tTB = sender as TextBox;             
-             if (e.KeyChar == '-') 
-             { 
-                 int pos = tTB.SelectionStart; 
-                 if (tTB.Text.Contains('-')) 
-                 { 
-                     tTB.Text = tTB.Text.Substring(1); 
-                     tTB.SelectionStart = pos - 1; 
-                 } 
-                 else 
-                 { 
-                     tTB.Text = '-' + tTB.Text; 
-                     tTB.SelectionStart = pos + 1; 
-                 } 
-                 e.Handled = true; 
-                 return; 
-             } 
-             if (e.KeyChar == 8) 
-             { 
-                 if (tTB.SelectionLength > 0) 
-                 { 
-                     int pos = tTB.SelectionStart; 
-                     tTB.Text = tTB.Text.Substring(0, tTB.SelectionStart) + tTB.Text.Substring(tTB.SelectionStart + tTB.SelectionLength); 
-                     tTB.SelectionStart = pos; 
-                     e.Handled = true; 
-                 } 
-                 return; 
-             } 
-             if (Char.IsDigit(e.KeyChar)) 
-             { 
-                 if (tTB.Text.Contains('-') & tTB.SelectionStart == 0) e.Handled = true; 
-                 return; 
-             } 
-             e.Handled = true; 
-         } 
-         /// <summary> 
-         /// это событие позволяет вводить целые положительные числа 
-         /// </summary> 
-         /// <param name="sender"></param> 
-         /// <param name="e"></param> 
-         public void TbKeyInteger(object sender, KeyPressEventArgs e) 
-         { 
-             TextBox tTB = sender as TextBox; 
-             if (e.KeyChar == 8) 
-             { 
-                 if (tTB.SelectionLength > 0) 
-                 { 
-                     int pos = tTB.SelectionStart; 
-                     tTB.Text = tTB.Text.Substring(0, tTB.SelectionStart) + tTB.Text.Substring(tTB.SelectionStart + tTB.SelectionLength); 
-                     tTB.SelectionStart = pos; 
-                     e.Handled = true; 
-                 } 
-                 return; 
-             } 
-             if (Char.IsDigit(e.KeyChar)) 
-             { 
-                 if (tTB.Text.Contains('-') & tTB.SelectionStart == 0) e.Handled = true; 
-                 return; 
-             } 
-             e.Handled = true; 
-         } 
-     } 
- } 
-