控制集合和.在哪里?

Met*_*nix 1 linq vb.net iterator

有没有办法做到以下几点?

For each ctrl as Control in Me.Controls.Where(function(x) x.Enabled = False)
    ctrl.Enabled = True
Next
Run Code Online (Sandbox Code Playgroud)

我尝试的每一种方式,'Where' is not a member of 'System.Web.UI.ControlCollection'大概是因为ControlCollection不是可枚举的?

SLa*_*aks 5

大多数LINQ扩展方法扩展了类型安全IEnumerable(Of T).

ControlCollection早于泛型并且仅实现IEnumerable,因此扩展方法将不起作用.

您需要调用.Cast(Of Control)()以返回IEnumerable(Of Control)将接受扩展方法的内容.