Date time picker validations

2020-02-24 07:23发布

问题:

I am sorry for posting this question as it may be find silly to all, but I am not getting the exact solution.

The question is: I have a Date time picker in my project, it comes after the 3 textboxes in the form, if there is no text is entered in the textbox and enter on submit, it gives a message(validation) that data to be entered. In the same way, if the date is not selected, it should proceed further.

What is the code to do that, the code which worked for other textboxes and not working for datetimepicker control is:

       if (dateInsert.Value.ToString() = string.Empty)
        {
            MessageBox.Show("Please select date!");
            dateInsert.Focus();
            return;
        }

回答1:

Please correct the code and see if it works

               if (dateInsert.Value.ToString() == "")
              {
                MessageBox.Show("Please select date!");
                dateInsert.Focus();
                return;
               }


回答2:

There is no direct solution to empty DateTimePicker. Only way to empty DateTimePicker is to set CustomFormat and then set empty space as value.

dateTimePicker1.Format = DateTimePickerFormat.Custom;
dateTimePicker1.CustomFormat = " ";

Even if you do it value will be cleared in the control but if you access the value property of the control in code it will return the current date time. So your condition will always be false.

//This is always false
dateInsert.Value.ToString() = string.Empty

SOLUTION

Instead of using Value use Textin the condition.

if(dateInsert.Text = " ")


回答3:

if you are using visual studio.....use this code to validate empty textbox

<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" Display="None"
        ErrorMessage="Select Date" ControlToValidate="dateInsert" ValidationGroup="validation"> </asp:RequiredFieldValidator>


回答4:

if (string.IsNullOrEmpty(dateInsert.Text)
          {
            MessageBox.Show("Please select date!");
            dateInsert.Focus();
            return;
           }

hope this helps someone



回答5:

if(datepicker.Text == " ")
messagebox.show("Please Select Date");

// this works 100 %