C# 如何使用Linq过滤Application.OpenForms集合?
我想使用C# 如何使用Linq过滤Application.OpenForms集合?,c#,linq,C#,Linq,我想使用Where来过滤应用程序。OpenForms与Linq的集合,这个网站上的几个问题表明,我所需要做的就是访问它的AllKeys属性。但是,即使在我创建一个新的Windows窗体应用程序时,该集合似乎根本没有此属性,并且在我尝试使用它时也不会编译。原因可能是什么?您必须强制转换它,因为它不实现IEnumerable,而只实现IEnumerable: var query = Application.OpenForms.Cast<Form>() .Where(form =&
Where
来过滤应用程序。OpenForms
与Linq的集合,这个网站上的几个问题表明,我所需要做的就是访问它的AllKeys
属性。但是,即使在我创建一个新的Windows窗体应用程序时,该集合似乎根本没有此属性,并且在我尝试使用它时也不会编译。原因可能是什么?您必须强制转换它,因为它不实现IEnumerable
,而只实现IEnumerable
:
var query = Application.OpenForms.Cast<Form>()
.Where(form => ...);
var query=Application.OpenForms.Cast()
。其中(表格=>…);
但是,
表单
没有AllKeys
属性。您是否混淆了webforms和winforms?在前者中没有Application.OpenForms
Application.OpenForms.Cast(),其中(x=>…)代码>可能是我混淆了两者。不管怎样,您提供的代码正是我所需要的!