为什么这个LINQ查询不起作用?我试图帮助别人并写了这个查询:varfoundTab=(fromtabintabControl1.TabPageswheretab.Name=="tabName"selecttab).First();他们报告说他们收到此错误:未找到源类型“System.Windows.Forms.TabControl.TabPageCollection”的查询模式的实现。找不到“哪里”。考虑明确指定范围变量“tab”的类型。我检查了MSDN,TabPageCollection实现了IList、ICollection、IEnumerable。那么,这是怎么回事?这个错误是什么意思,还有另一种方法可以查询选项卡控件的TabPages属性吗?试试这个:vartab=(fromSystem.Windows.Forms.TabPagetabintabControl1.TabPageswheretab.Name=="tabName"selecttab).First();此代码指定范围变量的类型。TabPageCollection实现IEnumerable但不是IEnumerable,这是LINQ使用的。要修复,请使用这样的转换方法:varfoundTab=(fromtabintabControl1.TabPages.Cast()wheretab.Name=="tabName"selecttab).First();但是,但是……?如果你有名字,你可以直接引用它吗?TabPages["TABNAME"]试试这个:vartab=tabControl1.TabPages.FirstOrDefault(t=>t.Name=="tabName");另外,请确保您已使用System.Linq;在文件的顶部。DylanC#学习教程就是这些:为什么这个LINQ查询不起作用?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
