NetworkChange.NetworkAddressChanged Event
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Occurs when the IP address of a network interface changes.
Assembly: System.Net (in System.Net.dll)
The NetworkChange class raises NetworkAddressChanged events when the address of a network interface, also called a network card or adapter, changes.
To have a NetworkChange object call an event-handling method when a NetworkAddressChanged event occurs, you must associate the method with a NetworkAddressChangedEventHandler delegate, and add this delegate to this event.
The following example uses a NetworkAddressChangedEventHandler to handle NetworkAddressChanged events and detect when network availability changes.
Public class Example Dim Shared online As Boolean = False Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock) ' Initialize the online variable and set a NetworkChange handler SetupNetworkChange() outputBlock.Text &= "Network is: " If online Then outputBlock.Text &= "online" Else outputBlock.Text &= "offline" End If ' Now start the main work of the application End Sub ' Subroutine that gets called when the network changes Private Shared Sub OnNetworkChange (ByVal sender As object, _ ByVale AS EventArgs) If NetworkInterface.GetIsNetworkAvailable() Then If Not online Then online = True ' do what is needed to GoOnline() End If Else If online Then online = False ' do what is needed to GoOffline() End If End If End Sub Private Shared Sub SetupNetworkChange() ' Get current network availalable and store the ' initial value for online value If NetworkInterface.GetIsNetworkAvailable() Then online = true ' do what is needed to GoOnline() Else online = false ' do what is needed to GoOffline() End If ' Now add a network change event handler to indicate ' network availability AddHandler NetworkChange.NetworkAddressChanged , _ AddressOf OnNetworkChange End Sub End Class