c#如何在表单加载中重新运行代码
本文关键字:重新运行 代码 加载 表单 | 更新日期: 2023-09-27 18:13:54
对于我正在编写的程序,我想要请求一个名称,如果输入有数字或其他不需要的输入,则返回并再次执行。
这是我当前的代码
private void gameForm_Load(object sender, EventArgs e)
{
string value = "Type here";
if (globalVariables.InputBox("Name", "Please enter name", ref value) == DialogResult.OK)
{
name = value;
if (name.All(char.IsLetter))
{
lblName.Text = value;
}
else
{
}
}
}
如果存在无效输入,我如何重新运行此代码?
创建一个新方法public void NameCheck()"然后把你想要运行的代码放进去"
然后在页面加载中放入NameCheck();调用方法
如果名字包含数字,调用NameCheck();在else.
public void NameCheck()
{
string value = "Type here";
if (globalVariables.InputBox("Name", "Please enter name", ref value) == DialogResult.OK)
{
name = value;
if (name.All(char.IsLetter))
{
lblName.Text = value;
}
else
{
NameCheck();
}
}
}
private void gameForm_Load(object sender, EventArgs e)
{
NameCheck();
}
您可以使用while
循环
while(true)
{
if (globalVariables.InputBox("Name", "Please enter name", ref value) == DialogResult.OK)
{
name = value;
if (name.All(char.IsLetter))
{
lblName.Text = value;
break;
}
}
}
private void gameForm_Load(object sender, EventArgs e)
{
reAsk:
string value = "Type here";
if (globalVariables.InputBox("Name", "Please enter name", ref value) == DialogResult.OK)
{
name = value;
if (name.All(char.IsLetter))
{
lblName.Text = value;
}
else
{
goto reAsk;
}
}
}