C#隐藏窗口而不是关闭

时间:2011-03-30 18:25:22

标签: c# hide formclosing

我试图拦截关闭窗口,但它似乎失败并且无论如何都要关闭表单应用程序。本质上,该程序应该等待来自签名板上的用户的输入,并且当有人开始签名时它会弹出,但我需要阻止该程序被关闭。

这是我尝试过的似乎失败的原因

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
    //reset hardware
    e.Cancel = true;
    sigPlusNET1.LCDRefresh(0, 0, 0, 240, 64);
    sigPlusNET1.LCDSetWindow(0, 0, 240, 64);
    sigPlusNET1.SetSigWindow(1, 0, 0, 240, 64);
    sigPlusNET1.KeyPadClearHotSpotList();
    sigPlusNET1.SetLCDCaptureMode(1);
    sigPlusNET1.SetTabletState(0);
    this.Hide();

}

任何想法?

编辑:使用此代码,应用程序正常关闭,不会隐藏。

以下是适用的部分:

// Ok Button
private void cmdClose_Click(object sender, EventArgs e)
{
    //cmdSaveImage_Click(sender, e);
    this.Visible = false;
    sigPlusNET1.KeyPadClearHotSpotList();
    sigPlusNET1.ClearTablet();
    sigPlusNET1.KeyPadAddHotSpot(0, 1, 0, 0, 1000, 1000);
    progTimer.Enabled = true;
}

2 个答案:

答案 0 :(得分:3)

确保在表单属性中指定Form1_FormClosing作为FormClosing事件的处理程序。

或者,您可以覆盖实际方法本身。

    protected override void OnClosing(CancelEventArgs e)
    {
        e.Cancel = true;
        base.OnClosing(e);
    }

答案 1 :(得分:0)

问题可能是你hide the window 也许只要你把它最小化就行了。