如何在两个窗口之间的Wpf应用程序中维护会话?

维维克·拉贾克

我有WPF一个注册窗口,其中应用程序。当我单击注册选项卡时,它会打开注册窗口。我的要求是,如果在单击“注册”选项卡后没有任何活动,则应超时并移至其他窗口。

贾斯汀·CI

我认为您需要在窗口上检查空闲时间

在Windows加载事件上

 private static DispatcherTimer idleTimer;
 private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            idleTimer = new DispatcherTimer();
            idleTimer.Interval = TimeSpan.FromSeconds(5);
            idleTimer.Tick += this.OnTimerTick;
            idleTimer.Start();
        }

计时器滴答事件

private void OnTimerTick(object sender, EventArgs e)
{
    uint idleTime = this.GetIdleTime();
    if (idleTime > 5000)
    {
        this.Close();
    }
}

空闲时间助手方法

[DllImport("User32.dll")]
private static extern bool GetLastInputInfo(ref LASTINPUTINFO dummy);


private uint GetIdleTime()
{
    LASTINPUTINFO lastUserAction = new LASTINPUTINFO();
    lastUserAction.CbSize = (uint)System.Runtime.InteropServices.Marshal.SizeOf(lastUserAction);
    GetLastInputInfo(ref lastUserAction);
    return (uint)Environment.TickCount - lastUserAction.DwTime;
}   

internal struct LASTINPUTINFO
{        
    public uint CbSize;   
    public uint DwTime;   

}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在两个 codeigniter 应用程序之间共享会话…………?

在两个节点应用程序之间共享会话

如何在express.js中的两个应用程序方法之间发送数据

如何在Swift 4 Cocoa应用程序的开头让两个窗口弹出?

如何在两个 asp.net 应用程序之间共享身份验证

Spring Secure - 如何在两个应用程序之间共享 bcrypt?

如何在两个应用程序之间共享数据

如何在两个不同的角度应用程序之间集成

如何在heroku的两个不同应用程序之间共享worker?

GAE python:如何在两个应用程序之间发布/检索json数据?

AngularJS。如何在两个应用程序之间共享单个服务

如何在两个应用程序之间实现拖放?

如何在两个不同的角度应用程序之间传递数据

如何在两个应用程序之间共享实体框架?

如何在两个沙盒应用程序之间共享首选项文件?

如何在两个应用程序之间进行安全通信?

如何在不同机器上的两个电子应用程序之间进行交互

Keycloak-如何禁用两个(Angular)客户端应用程序之间的共享会话?

如何使用属性在 MATLAB App Designer 中的两个应用程序之间共享数据?

如何在核心Java应用程序中维护会话超时?

如何在Java中跨多个Web应用程序维护相同的会话ID

如何在goLang的整个应用程序中维护mongoDB会话作为全局变量

如何使用 Prism 6 在 WPF 应用程序中设置两个内容区域

在两个Rails4应用程序之间共享会话

在两个不同版本的Rails应用程序之间共享Devise会话cookie

在UWP Javascript应用程序的两个窗口之间共享状态或传递消息

如何在Nginx FastCGI的两个目录中配置两个Codeigniter应用程序

WPF C#应用程序我有两个主窗口

同一台计算机中两个不同的WPF应用程序之间的通信