我创建了一个名为Checker的类。这是代码:
namespace WindowsFormsApplication1
{
public class Checker
{
int CheckAdminEdit(Object Temp,int counter,int allow)
{
int _counter = counter;
int _allow = allow;
Admin _Temp = Temp as Admin;
foreach (Control c in _Temp.edit_admin.Controls)
{
if (c is TextBox)
{
TextBox textBox = c as TextBox;
if (textBox.Text.Equals(string.Empty))
{
_Temp.errorProvider1.SetIconPadding(textBox, 0);
_Temp.errorProvider1.SetError(textBox, "Field Empty");
_allow++;
}
else
{
_Temp.errorProvider1.SetIconPadding(textBox, 666);
if (textBox.Name == "textBox6")
{
if( CheckEmail(textBox.Text))
_Temp.errorProvider2.SetIconPadding(textBox, 666);
else
{
_Temp.errorProvider2.SetError(textBox, "Invalid email syntax");
_counter++;
}
}
}
}
}
return (allow + counter);
}
private bool CheckEmail(string EmailAddress)
{
string strPattern = "^([0-9a-zA-Z]([-.\\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\\w]*[0-9a-zA-Z]\\.)+[a-zA-Z]{2,9})$";
if (System.Text.RegularExpressions.Regex.IsMatch(EmailAddress, strPattern))
return true;
return false;
}
}
}
以我的形式,我试图用:
来宣布课程Checker try = new Checker;
但是第一个Checker中的下划线也是试试=符号和;标志说只有赋值,调用,递增,递减和新对象表达式才能用作语句。对不起,如果这很难理解,但我非常感谢那些可以提供帮助的人:D
答案 0 :(得分:4)
您没有在()
运算符之后使用括号new
来调用构造函数。这就是您收到Only assignment, call, increment, decrement, and new object expressions can be used as a statement
错误的原因。
此外,try是一个不能用作变量名的关键字。
你可以这样做
Checker @try = new Checker();
或
Checker _try = new Checker();
在这种情况下,你必须像这样访问它
@try._counter = 0;
或
_try._counter = 0;
答案 1 :(得分:3)
try
是关键字,您应该为对象使用其他名称(或类似_try
)
答案 2 :(得分:2)
试试这个:
Checker _try = new Checker();