WindowsFormsApplicationBase.NetworkAvailabilityChanged Event


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Occurs when the network availability changes.

Namespace:   Microsoft.VisualBasic.ApplicationServices
Assembly:  Microsoft.VisualBasic (in Microsoft.VisualBasic.dll)

public event NetworkAvailableEventHandler NetworkAvailabilityChanged

An application raises the NetworkAvailabilityChanged event every time that the availability of the network changes. You can use the IsNetworkAvailable property of the e parameter to get the new state of the network connection. To get the current state of the network connection, use the IsAvailable property.

This event is raised on the application's main thread with the other user-interface events. This enables the event handler to access directly the application's UI. However, if the application is busy handling another user-interface event when this event is raised, this event cannot be processed until the other event handler finishes or calls the DoEvents method.

The NetworkAvailabilityChanged event provides the same functionality as this event but is available for all application types.

The code for the NetworkAvailabilityChanged event handler is stored in the ApplicationEvents.vb file, which is hidden by default.

To access the Code Editor window for application events

  1. Have a project selected in Solution Explorer. Click Properties on the Project menu.

  2. Click the Application tab.

  3. Click the View Application Events button to open the Code Editor.

    For more information, see Application Page, Project Designer (Visual Basic).


Many network hubs will provide a network connection even if the hub is disconnected from a larger network. Consequently, for wired connections, this event indicates change in the connection between the computer and a hub.


The NetworkAvailabilityChanged event is not raised by applications when they are run on Windows 95 and Windows 98, or when they are run by a non-administrator on Windows 2000. If your application might run on those operating systems, use the IsAvailable property to check for network availability.

Project type


Windows Forms Application


Class Library


Console Application


Windows Forms Control Library


Web Control Library


Windows Service


Web Site


This example calls the SetConnectionStatus method of the default Form1 class when the network availability changes.

You must enter the code in the Code Editor window for application events. To access this window, follow the instructions from this topic's Remarks section.

The project should have a form named Form1. It should have a method named SetConnectionStatus that takes a Boolean parameter.

Private Sub MyApplication_NetworkAvailabilityChanged( 
    ByVal sender As Object, 
    ByVal e As Microsoft.VisualBasic.Devices.NetworkAvailableEventArgs 
) Handles Me.NetworkAvailabilityChanged
End Sub

.NET Framework
Available since 2.0
Return to top