我从数据库中提取值,指定用户是否选择了与文件系统观察程序关联的特定通知过滤器。我的问题是,如果用户指定了多个通知过滤器,如何将其分配给观察者?
我理解应该如何提供通知过滤器的格式I.E
fsw.NotifyFilter = NotifyFilters.FileName OR NotifyFilters.CreationTime OR ......
问题是我可以使用if语句将每个单独的通知过滤器分配给观察者,检查用户是否已指定某个通知过滤器并继续检查,但只是将通知过滤器设置为上次检查的值。
使用fsw.Notifyfilter += Notifyfilters.FileName
不起作用
请帮助
答案 0 :(得分:1)
好的,你想要这样的东西吗?
If condition Then
fsw.NotifyFilter = (fsw.NotifyFilter Or NotifyFilters.FileName)
Else If condition2 Then
fsw.NotifyFilter = (fsw.NotifyFilter Or NotifyFilters.CreationTime)
...
End If
这基本上相当于一次性完成所有操作,除了分为多个步骤。