My.Computer.Network.NetworkAvailabilityChanged 事件

更新:2007 年 11 月

在网络可用性变动时发生。

' Usage
Public Sub MyComputerNetwork_NetworkAvailabilityChanged( _
   ByVal sender As Object, _
   ByVal e As Devices.NetworkAvailableEventArgs _
)
End Sub
Sub Handle_NetworkAvailabilityChanged()
   AddHandler My.Computer.Network.NetworkAvailabilityChanged, _
      AddressOf MyComputerNetwork_NetworkAvailabilityChanged
End Sub
' Declaration
Public Event NetworkAvailabilityChanged( _
   ByVal sender As Object, _
   ByVal e As Devices.NetworkAvailableEventArgs _
)

参数

  • sender
    必选。引发该事件的 Object。

  • e
    必选。包含有关网络可用性的信息的 NetworkAvailableEventArgs 对象。

备注

每次网络可用性发生变化时,应用程序都会引发 NetworkAvailabilityChanged 事件。可以使用 e 参数 IsNetworkAvailable 属性来获取网络连接的新状态。若要获取网络连接的当前状态,请使用 My.Computer.Network.IsAvailable 属性

在 Windows 窗体应用程序中,将在应用程序的主线程上与其他用户界面事件一起引发此事件。这样,事件处理程序就能够直接访问应用程序的用户界面。但是,如果引发此事件时应用程序正忙于处理另一个用户界面事件,则只有在其他事件处理程序已完成或调用 My.Application.DoEvents 方法之后,才会处理此事件。

不能使用 Handles 语句来处理 NetworkAvailabilityChanged 事件;必须使用 AddHandler 语句。

在 Windows 窗体应用程序中,My.Application 对象将公开所提供功能与此事件相同的 NetworkAvailabilityChanged 事件,但您可以使用 Handles 语句来处理它。有关更多信息,请参见 My.Application.NetworkAvailabilityChanged 事件

说明:

许多网络集线器即使在集线器从更大网络断开的连接情况下也会提供网络连接。因此,对于有线连接,此事件将指明计算机和集线器之间连接的更改。

说明:

当应用程序在 Windows 95 和 Windows 98 上运行,或在 Windows 2000 上由非管理员运行时,它将不会引发 NetworkAvailabilityChanged 事件。如果您的应用程序可能会在这些平台上运行,请使用 My.Computer.Network.IsAvailable 属性来检查网络可用性。

示例

此示例使用 My.Computer.Network.NetworkAvailabilityChanged 事件来更新窗体或控件的用户界面。

Private Sub DisplayAvailability(ByVal available As Boolean)
    Label1.Text = available.ToString
End Sub

Private Sub MyComputerNetwork_NetworkAvailabilityChanged( _
    ByVal sender As Object, _
    ByVal e As Devices.NetworkAvailableEventArgs)

    DisplayAvailability(e.IsNetworkAvailable)
End Sub

Private Sub Handle_NetworkAvailabilityChanged()
    AddHandler My.Computer.Network.NetworkAvailabilityChanged, _
       AddressOf MyComputerNetwork_NetworkAvailabilityChanged
    DisplayAvailability(My.Computer.Network.IsAvailable)
End Sub

此代码应位于包含 Label(名为 Label1)的窗体或控件中。必须调用 Handle_NetworkAvailabilityChanged 方法才能初始化标签并使事件处理程序挂钩。

要求

命名空间:Microsoft.VisualBasic.Devices

类:Network

**程序集:**Visual Basic 运行库(在 Microsoft.VisualBasic.dll 中)

按项目类型列出的可用性

项目类型

是否可用

Windows 应用程序

类库

控制台应用程序

Windows 控件库

Web 控件库

Windows 服务

网站

权限

不需要任何权限。

请参见

参考

My.Computer.Network 对象

My.Application.NetworkAvailabilityChanged 事件

Microsoft.VisualBasic.Devices.NetworkAvailableEventArgs