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的回答足以滿足我的需求,但任何其他想法總是受歡迎的。如果我需要進一步澄清,請告訴我 –