3、.NET 编程中的委托、事件与事件处理

.NET 编程中的委托、事件与事件处理

1. 委托在目录遍历中的应用

在 .NET 编程里,委托是一项极为实用的工具。就拿目录遍历来说,使用 Directory.GetDirectories 方法虽然能获取指定目录下的所有子目录,但当返回的数组元素众多时,会耗费大量时间和内存,而且在处理过程中应用程序会阻塞,无法响应用户输入。

下面是一个简单的示例代码:

Sub TestListSubfolders()
    Dim dirs() As String = Directory.GetDirectories( _
        "C:\WINDOWS", "*.*", SearchOption.AllDirectories)
    For Each dirName As String In dirs
        ' 对 ArrayList 中返回的元素进行操作
        Console.WriteLine(dirName)
    Next
End Sub

为了解决上述问题,可以使用委托来实现回调方法,从而在需要时中断枚举。以下是相关代码:

' 定义一个委托,指定可以传递给 TraverseDirectoryTree2 的函数语法
Delegate Function TraverseDirectoryTreeCallback2(ByVal dirName As String) As Boolean

Function TraverseDirectoryTree2(ByVal 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值