My.Application.NetworkAvailabilityChanged 事件

更新:2007 年 11 月

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

' Usage
Public Sub Me_NetworkAvailabilityChanged( _
   ByVal sender As Object, _
   ByVal e As NetworkAvailableEventArgs _
) Handles Me.NetworkAvailabilityChanged
End Sub
' Declaration
Public Event NetworkAvailabilityChanged( _
   ByVal sender As Object, _
   ByVal e As NetworkAvailableEventArgs _
)

参数

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

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

备注

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

此事件是和其他用户界面事件一起在应用程序的主线程上引发的。这使事件处理程序可以直接访问应用程序的 UI。但是,如果在引发此事件时应用程序正在忙于处理另一个用户界面事件,则在另一个事件处理程序完成或调用 My.Application.DoEvents 方法之前,此事件将无法得到处理。

My.Computer.Network.NetworkAvailabilityChanged 事件提供了与此事件相同的功能,但它可用于所有应用程序类型。

NetworkAvailabilityChanged 事件处理程序的代码存储在 ApplicationEvents.vb 文件中,该文件默认情况下是隐藏的。

访问应用程序事件的“代码编辑器”窗口

  1. 在“解决方案资源管理器”中选择一个项目。在“项目”菜单上单击“属性”。

  2. 单击“应用程序”选项卡。

  3. 单击“查看应用程序事件”按钮,打开代码编辑器。

    有关更多信息,请参见如何:处理应用程序事件 (Visual Basic)

说明:

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

说明:

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

示例

此示例将在网络可用性发生变化时调用默认 Form1 类的 SetConnectionStatus 方法。

必须在“代码编辑器”窗口中为应用程序事件输入代码。若要访问此窗口,请按照本主题“备注”一节中的说明进行操作。

Private Sub MyApplication_NetworkAvailabilityChanged( _
    ByVal sender As Object, _
    ByVal e As Microsoft.VisualBasic.Devices.NetworkAvailableEventArgs _
) Handles Me.NetworkAvailabilityChanged
    My.Forms.Form1.SetConnectionStatus(e.IsNetworkAvailable)
End Sub

编译代码

项目应有一个名为 Form1 的窗体,还应有一个名为 SetConnectionStatus 的方法,该方法带有 Boolean 参数。

要求

命名空间:Microsoft.VisualBasic.ApplicationServices

类:WindowsFormsApplicationBase

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

按项目类型列出的可用性

项目类型

可用

Windows 应用程序

类库

控制台应用程序

Windows 控件库

Web 控件库

Windows 服务

网站

权限

不需要任何权限。

请参见

参考

My.Application 对象

My.Forms 对象

My.Computer.Network.NetworkAvailabilityChanged 事件

Microsoft.VisualBasic.Devices.NetworkAvailableEventArgs