加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 会话结束事件无效

发布时间:2020-12-15 21:56:41 所属栏目:百科 来源:网络整理
导读:我想让用户在 Windows关闭或注销时决定是否要在我的应用上做最后一次请求.所以我正在使用“SessionEnding”事件. 以下代码被触发但不起作用.这是最简单的例子: public App(){ this.SessionEnding += App_SessionEnding;}void App_SessionEnding(object send
我想让用户在 Windows关闭或注销时决定是否要在我的应用上做最后一次请求.所以我正在使用“SessionEnding”事件.

以下代码被触发但不起作用.这是最简单的例子:

public App()
{
        this.SessionEnding += App_SessionEnding;
}

void App_SessionEnding(object sender,SessionEndingCancelEventArgs e)
{
        e.Cancel = true;
}

我担心我之前在计算机中使用了一个增强程序(比如CCleaner),并且它以某种方式停用了这个事件. = O

当我向事件添加MessageBox,并且我请求注销我的计算机时,会出现MessageBox,但我没有时间点击某处,因为1秒后系统会注销.系统似乎没有等待我的申请.

Obs:我使用的是Windows 7.

解决方法

我尝试了你的代码示例但没有成功…但是我将它放入我的主窗口,导致应用程序关闭,MessageBox无限期地显示,直到我点击关闭.这有用吗?

protected override void OnClosing(System.ComponentModel.CancelEventArgs e)
    {
        MessageBox.Show("Blah","Blah",MessageBoxButton.OK);

        base.OnClosing(e);
    }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读