互联网丢失连接Webbrowser

时间:2012-05-18 20:12:48

标签: windows-phone-7

我在app中有webrowser。当互联网连接丢失时,我需要对webrowser做一些事情,例如显示MessageBox,当互联网再次可用时重新连接到网站。我发现可以使用DeviceNetworkInformation.NetworkAvailabilityChanged事件,但是在我测试时,事件没有触发。 我尝试使用DeviceNetworkInformation.IsNetworkAvailable,当导航但这没有我想要的功能。我在诺基亚Lumia 710上进行了测试。

这里是我的简单代码,我是从msdn的例子中得到的 http://msdn.microsoft.com/en-us/library/microsoft.phone.net.networkinformation.devicenetworkinformation.networkavailabilitychanged%28v=vs.92%29.aspx

DeviceNetworkInformation.NetworkAvailabilityChanged + = new EventHandler(NetworkAvailabilityChanged);

    void NetworkAvailabilityChanged(object sender, NetworkNotificationEventArgs e)
    {            
       string info = string.Empty;
       bool connection = false;
       bool disco = false;

        switch (e.NotificationType)
        {                    
            case NetworkNotificationType.InterfaceConnected:                    
                    connection = true;                        
                    break;

            case NetworkNotificationType.InterfaceDisconnected:                    
                    info = "Lost Internet";      
                    disco=true;                                      
                    break;

            case NetworkNotificationType.CharacteristicUpdate:                   
                   break;                                 
            default:                   
                   break;

        }
        Dispatcher.BeginInvoke(() =>
        {
           if(disco)
            MessageBox.Show(info);

            if(connection)              
             webbrowser1.Navigate(site);                                         
        });
    }

我有问题我在电话中检查这些方法是IsCellularDataEnabled,IsNetworkAvailable,IsWiFiEnabled返回true。我读到某个地方只有一种类型的网络启用时,事件NetworkAvailabilityChanged才起作用。这是真的吗?

1 个答案:

答案 0 :(得分:0)

请查看此页面,它可以帮助您http://msdn.microsoft.com/en-us/library/microsoft.phone.net.networkinformation.devicenetworkinformation.networkavailabilitychanged(v=vs.92).aspx您可以获取与NetworkNotificationEventArgs参数断开连接的信息,因为它说...