0

嗨,一个允许用户输入几种不同类型数据的 GUI。如何验证用户输入以使其不为空白并检查某些值是否在数字范围内?

4

3 回答 3

0

对于非空值,您只需要检查是否string.IsNullOrWhiteSpace(value)返回 true 或 false。

对于整数范围检查是否value<=100 && value>=0

对于日期,检查DateTime.TryParseExact(value, "MM/dd/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out parsed)是真还是假

于 2012-10-14T11:11:44.923 回答
0

您可以在您的类中创建IsValid(或类似的)方法Student(我假设这student1是类的对象Student):

class Student
{
    // your code
    // ...
    public bool IsValid()
    {
        bool isValid = true;

        if(string.IsNullOrWhiteSpace(FirstName))
        {
           isValid = false;
        }
        else if(string.IsNullOrWhiteSpace(LastName))
        {
           isValid = false;
        }
        // ... rest of your validation here

        return isValid;
    }
}

然后:

private void button1_Click(object sender, EventArgs e)
{
    student1.FirstName = firstnamebox.Text;
    student1.SecondName = secondnamebox.Text;
    student1.DateofBirth = DateTime.Parse(dobtextbox.Text).Date;
    student1.Course = coursetextbox.Text;
    student1.MatriculationNumber = int.Parse(matriculationtextbox.Text);
    student1.YearMark = double.Parse(yearmarktextbox.Text);

    if(student1.IsValid())
    {
        // good
    }
    else
    {
        // bad
    }
}
于 2012-10-14T11:12:32.270 回答
0

windows控件中的验证,请阅读以下文章

Windows 窗体的验证器 - ValidationProvider 控件

Windows 窗体中的用户输入验证

在 Windows 窗体和 C# 中使用错误提供程序控件

对于 Web 表单。

Web 表单中的验证控件

于 2012-10-14T11:12:40.273 回答