如何SessionSwitch
使用 C# 从 Windows 应用程序中的事件调用方法?需要使用委托吗?请帮助提供示例代码。
问问题
1877 次
2 回答
2
像这样:
SystemEvents.SessionSwitch += HandleSessionSwitch;
...
private static void HandleSessionSwitch(object sender, Microsoft.Win32.SessionSwitchEventArgs e)
{
// do something
}
注意:当您的应用程序关闭或可能导致内存泄漏时,您应该取消订阅此事件(如MSDN 上的文档中所述)。
于 2012-09-06T07:17:19.813 回答
1
你必须处理Microsoft.Win32.SystemEvents.SessionSwitch
事件。请注意,处理程序方法必须是static
:
SystemEvents.SessionSwitch += new SessionSwitchEventHandler(SystemEvents_SessionSwitch);
[...]
static void SystemEvents_SessionSwitch(object sender, SessionSwitchEventArgs e)
{
// your code goes here
}
或者,像往常一样,一个 lambda 表达式会做:
SystemEvents.SessionSwitch += (sender, e) => { /* your code*/ };
于 2012-09-06T07:25:21.263 回答