NetworkChange Class

 
System_CAPS_noteNote

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

Allows applications to receive notification when the Internet Protocol (IP) address of a network interface, also called a network card or adapter, changes.

Namespace:   System.Net.NetworkInformation
Assembly:  System (in System.dll)

System.Object
  System.Net.NetworkInformation.NetworkChange

public class NetworkChange

NameDescription
System_CAPS_pubmethodNetworkChange()

Obsolete. Initializes a new instance of the NetworkChange class.

NameDescription
System_CAPS_pubmethodEquals(Object)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_protmethodFinalize()

Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.)

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_protmethodMemberwiseClone()

Creates a shallow copy of the current Object.(Inherited from Object.)

System_CAPS_pubmethodSystem_CAPS_staticRegisterNetworkChange(NetworkChange)

Obsolete. Registers a network change instance to receive network change events.

System_CAPS_pubmethodToString()

Returns a string that represents the current object.(Inherited from Object.)

NameDescription
System_CAPS_pubeventSystem_CAPS_staticNetworkAddressChanged

Occurs when the IP address of a network interface changes.

System_CAPS_pubeventSystem_CAPS_staticNetworkAvailabilityChanged

Occurs when the availability of the network changes.

The NetworkChange class provides address change notification by raising NetworkAddressChanged events. An interface address can change for many reasons, such as a disconnected network cable, moving out of range of a wireless Local Area Network, or hardware failure.

To receive notification, you must identify your application's event handlers, which are one or more methods that perform your application-specific tasks each time the event is raised. To have a NetworkChange object call your event-handling methods when a NetworkAddressChanged event occurs, you must associate the methods with a NetworkAddressChangedEventHandler delegate, and add this delegate to the event.

The following code example listens for address changes and displays the status of network interfaces when a NetworkAddressChanged event occurs.

using System;
using System.Net;
using System.Net.NetworkInformation;

namespace Examples.Net.AddressChanges
{
    public class NetworkingExample
    {
        public static void Main()
        {
            NetworkChange.NetworkAddressChanged += new 
            NetworkAddressChangedEventHandler(AddressChangedCallback);
            Console.WriteLine("Listening for address changes. Press any key to exit.");
            Console.ReadLine();
        }
        static void AddressChangedCallback(object sender, EventArgs e)
        {

            NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();
            foreach(NetworkInterface n in adapters)
            {
                Console.WriteLine("   {0} is {1}", n.Name, n.OperationalStatus);
            }
        }
    }
}

Universal Windows Platform
Available since 8
.NET Framework
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 3.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: