在Visual Studio C#Express 2010上,我发现取消。通过根据文档设置e.Cancel导致应用程序在退出时挂起来进行验证。例如运行下面的内容,然后单击标题栏“X”。
有人知道解决方案吗?感谢。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void textBox1_Validating(object sender, CancelEventArgs e)
{
e.Cancel = true;
}
}
}
答案 0 :(得分:3)
由于textBox1
无效,因此无法关闭表单 - 如果您仍然希望允许用户关闭表单,那么您可以像这样处理FormClosing
事件:
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = false;
}
您需要以正常方式连接此事件,例如:
this.FormClosing += new FormClosingEventHandler(this.Form1_FormClosing);
如果您调试上述事件处理程序,如果验证事件hanlder将e.Cancel
设置为true,则会看到true
为e.Cancel
。