我試圖通過單詞循環顯示文本框中的文本,以便對其進行拼寫檢查。我將文本框的內容分割成一個數組,並遍歷數組中的每個單詞並通過拼寫檢查程序運行。當找到拼寫錯誤時,我在彈出窗口中顯示一個列表框,以便您可以選擇更正。Silverlight C# - 如何保持循環進度,直到一個事件完成?
我遇到的問題是它只是循環遍歷整個數組,並且最終只顯示需要完成的最後一次校正。
我該如何暫停循環,以便它等待所做的選擇然後恢復?
下面是循環代碼:
foreach(string checkedWord in articleWords)
{
bool success = _spellChecker.CheckWord(checkedWord);
List<string> suggest;
if (!success)
{
suggest = _spellChecker.GetSuggestions(checkedWord);
SpellChecklistBox.Items.Clear();
foreach (string s in suggest)
{
SpellChecklistBox.Items.Add(new ListBoxItem() { Content = s });
}
SpellCheckerPopup.IsOpen = true;
SpellChecklistBox.Items.Add(new ListBoxItem() { Content = " ----------------------" });
SpellChecklistBox.Items.Add(new ListBoxItem() { Content = "Ignore" });
}
}
當SpellCheckerPopup顯示,我在上SelectionChange列表框中的事件觸發。
基本上,我需要以某種方式暫停循環,然後當SelectionChange事件做它的事情,讓循環恢復。
提前致謝!
-Sootah