Seja notificado quando a internet estiver conectada ou desconectada

Eu tenho um aplicativo de desktop em WPF e C # desenvolvido sob o .Net 4.0 Client Framework que tem que mostrar ou ocultar alguns dados de acordo com se a Internet está disponível ou não no PC. Isso significa que eu tenho que ser capaz de detectar o mais rápido possível se a internet estiver desconectada ou conectada para reagir. (O exemplo pode ser desconectar de uma rede sem fio ou desconectar o cabo de rede)

Como eu pesquisei um pouco, descobri que existe um evento na classeNetworkChange chamadoNetworkAvailabilityChanged que dispara toda vez que a conexão muda (link para docs).

Eu estou desenvolvendo em uma máquina Windows 8 e quando eu tento lá o evento não é acionado, mas quando eu executar o aplicativo no Windows 7 o evento é disparado. Como nos documentos diz com o quadro 4.0 compatibilidade para esse evento é até o Windows 7, mas olhando para o mesmo evento nos documentos para a compatibilidade do framework 4.5, diz o Windows 8 também.

O problema é que, mesmo se eu alternar a estrutura de destino do projeto para 4.5 (que não é a idéia), o evento não será disparado no Windows 8.

Existem problemas de incompatibilidade que não estou percebendo? Existe uma maneira melhor de ser notificado quando a conexão é alterada?

Eu preciso, se possível, de uma solução para o cliente Framework 4.0 que funciona no Windows Vista, 7 e 8

questionAnswers(2)

yourAnswerToTheQuestion