1
在我的项目中,我组织细胞(TextBlock控件,在我的情况)到名为框的列表。每个盒子有9个单元。有没有办法比较这些列表中的所有单元格元素,并且如果的任何与我指定的任何表达式匹配,则返回true?对于我在迭代单元格列表时进行的每次比较,我需要确保给定单元格在进行比较时不会考虑自己。这样,它理所当然地不会考虑它自己的价值,因此我试图在下面写出lambda表达式。我知道First()和Single()返回单个元素,所以我怀疑这是我的lambda导致的问题。我使用下面的代码:Linq方式来检查是否有其他元素匹配表达式,而跳过自己
while (cell.Text == box.SkipWhile(e => e == cell).First().Text)
{
// change cell.Text's value here as long as any other cell's
// .Text value is the same
}
即使这编译,逐步执行代码似乎跳过while语句往往比它应该和我仍然在同越来越细胞之间是相同的。文本值框。
你的规范是非常不清楚。 “...比较列表中的所有元素...”任何列表?或你的箱子清单?或者可能是我们还不知道那是List的单元集合? “...匹配表达式......”哪个表达式?任何表情? “...为细胞本身做出例外......”表达式是否提及细胞作为输入? “它不计算如果Text.Value ==本身”,如果它本身是一个单元格,这是否意味着Text.Value也是一个单元格?请重新考虑编写适当的规格 –
@HaraldCoppoolse谢谢,我已经编辑了初始文章,以便更清楚。就目前而言,Juharr的回答足以满足我的需求,但任何其他想法总是受欢迎的。如果我需要进一步澄清,请告诉我 –