C# 验证输入多个文本框
我正在用这个方法读取数据并在另一个方法中设置字段,是否可以验证每个字段不是空的或包含的不是数字 我想能够显示一个消息框“填写所有文本框”,目前如果我添加一个elsemethod为每一个我得到(在最坏的情况下4个消息框)C# 验证输入多个文本框,c#,C#,我正在用这个方法读取数据并在另一个方法中设置字段,是否可以验证每个字段不是空的或包含的不是数字 我想能够显示一个消息框“填写所有文本框”,目前如果我添加一个elsemethod为每一个我得到(在最坏的情况下4个消息框) 可能是这样的: private bool ReadInput() { double curReading = 0; double prevReading = 0; double amount = 0; double unitNumber = 0;
可能是这样的:
private bool ReadInput()
{
double curReading = 0;
double prevReading = 0;
double amount = 0;
double unitNumber = 0;
var validData = true;
if (double.TryParse(tbReading.Text, out curReading))
{
CalcData.SetCurrentReading(curReading);
}
else
{
validData = false;
}
if (double.TryParse(tbPrevReading.Text, out prevReading))
{
CalcData.SetPrevReading(prevReading);
}
else
{
validData = false;
}
if (double.TryParse(tbAmount.Text, out amount))
{
CalcData.SetAmount(amount);
}
else
{
validData = false;
}
if (double.TryParse(tbUnitNumber.Text, out unitNumber))
{
CalcData.SetUnitNumber(unitNumber);
}
else
{
validData = false;
}
if(!validData)
{
//Show your dialog here
}
return false;
}
干杯,我刚刚意识到我也可以这样解决:)看一看:还要了解更多关于windows窗体验证的选项,请看这篇文章:
private bool ReadInput()
{
double curReading = 0;
double prevReading = 0;
double amount = 0;
double unitNumber = 0;
var validData = true;
if (double.TryParse(tbReading.Text, out curReading))
{
CalcData.SetCurrentReading(curReading);
}
else
{
validData = false;
}
if (double.TryParse(tbPrevReading.Text, out prevReading))
{
CalcData.SetPrevReading(prevReading);
}
else
{
validData = false;
}
if (double.TryParse(tbAmount.Text, out amount))
{
CalcData.SetAmount(amount);
}
else
{
validData = false;
}
if (double.TryParse(tbUnitNumber.Text, out unitNumber))
{
CalcData.SetUnitNumber(unitNumber);
}
else
{
validData = false;
}
if(!validData)
{
//Show your dialog here
}
return false;
}