Click here to Skip to main content
15,881,204 members
Articles / Programming Languages / C#
Alternative
Tip/Trick

InputBox: A simple user input dialog

Rate me:
Please Sign up or sign in to vote.
0.00/5 (No votes)
1 Dec 2011CPOL 11.4K   1   1
Consider the scenario where the input value must be valid.public static double? GetDouble(string caption, string defaultValue, bool mustBeValid = false){ ClearLastError(); using (InputForm inForm = new InputForm(caption, defaultValue)) { while (true) { ...

Consider the scenario where the input value must be valid.


C#
public static double? GetDouble(string caption, string defaultValue, bool mustBeValid = false)
{
   ClearLastError();
   using (InputForm inForm = new InputForm(caption, defaultValue))
   {
       while (true)
       {
          if (inForm.ShowDialog() != DialogResult.Cancel)
          {
             if (inForm.StringValue != string.Empty)
             {
                try 
                { 
                    //If valid value, we will break the loop.
                    return double.Parse(inForm.StringValue); 
                }
                catch (Exception ex)
                {
                  LastError = ex;
                }
             }
          }
          if(mustBeValid)
          {
             MessageBox.Show("You must enter a valid value");
          } else
          {
             return null;
          }
      }
   }
}

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer (Senior)
Netherlands Netherlands
Doing that 'computer thing' ever since the C64.

Sometimes I feel that being a programmer is much like being a doctor: You just have to know everything and if you don't, something dies.

Either being an application or a patient.

Oddly enough, more people care about the death of their application, than the massacre of people...

Comments and Discussions

 
Generaltesing. Pin
VICKY44341726-Dec-11 23:08
VICKY44341726-Dec-11 23:08 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.