我有一个在.Net 4.0 客户端框架下开发的 WPF 和 C# 桌面应用程序,它必须根据 PC 上是否可用互联网来显示或隐藏一些数据。这意味着我必须能够尽快检测互联网是否断开或连接才能做出反应。(例如断开无线网络或拔掉网线)
经过一番研究,我发现类中存在一个事件,该事件在NetworkChange
每次NetworkAvailabilityChanged
连接更改时都会触发(链接到文档)。
我在 Windows 8 机器上开发,当我在那里尝试时,事件不会被触发,但是当我在 Windows 7 上运行应用程序时,事件会被触发。正如文档中所说,该事件的框架 4.0 兼容性直到 Windows 7,但查看文档中框架 4.5 兼容性的相同事件也表明 Windows 8。
问题是,即使我将项目的目标框架切换到 4.5(这不是想法),该事件也不会在 Windows 8 上触发。
有没有我没有意识到的不兼容问题?有没有更好的方法在连接更改时获得通知?
如果可能,我需要适用于 Windows Vista、7 和 8 的 Framework 4.0 客户端的解决方案