我的申请中有两个表格。我调用 Form 2
的方式是这样的:
表格 1:
private void btnTest_Click(object sender, EventArgs e)
{
DialogResult result = new System.Windows.Forms.DialogResult();
Add_Link addLink = new Add_Link();
result=addLink.ShowDialog();
if (result == System.Windows.Forms.DialogResult.OK)
{
//
}
}
表格 2:
private void btnAdd_Click(object sender, EventArgs e)
{
if(validURL(txtSubLink.Text))
{
HyperLink add = new HyperLink(txtSubLink.Text,txtSubText.Text,"URL");
this.build = add;
}
else
{
MessageBox.Show("Valid URL Needed! " + txtSubLink.Text, "ERROR");
}
}
我的问题是如果用户单击添加
按钮,将显示错误消息(因为数据无效或文本框为空)但是 它会关闭表单。如果两个文本框包含正确的数据,我只希望用户关闭表单并将数据传回。如果两个文本框不包含正确的数据 OR 为空,当用户单击添加时,应该显示错误消息,并且 Form 2
应该保持打开状态,如何我能让它发生吗...?
最佳答案
我怀疑您的 btnAdd
已将其 DialogResult
属性设置为 OK
。取消设置,然后在您对输入满意时在您的事件处理程序中添加 this.DialogResult = DialogResult.OK
。
private void btnAdd_Click(object sender, EventArgs e)
{
if(validURL(txtSubLink.Text))
{
HyperLink add = new HyperLink(txtSubLink.Text,txtSubText.Text,"URL");
this.build = add;
this.DialogResult = DialogResult.OK;
}
else
{
MessageBox.Show("Valid URL Needed! " + txtSubLink.Text, "ERROR");
}
}
关于c# - 表单在不应该关闭的时候关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14025411/