2011-07-29 53 views
1

我正在使用數據模板中的列表框 - 從較早的帖子我不能直接在代碼後面引用列表框。WP7列表框 - 清除選定的項目

因此,我捕獲列表框的selectionchanged事件中最後一個選定的對象,並在我想要導航時使用它。

我現在還需要清除列表框中的選定對象 - 我可以在selectionchanged事件中執行此操作(將其存儲後)。

或者我可以在列表框中使用MouseLeftButtonDown事件(我知道它是「點擊」的等價物),但是我可以在此事件中獲得列表框中的選定對象。

  • 感謝

回答

5

在選擇更改事件設置<ListboxName>.SelectedIndex = -1;

另外,不要使用MouseLeftButtonDown事件。只要用戶觸碰到列表框,即使他們只是試圖向上/向下滾動而不是實際選擇一個項目,這也會觸發。

+0

不幸的是,listbox是在數據模板中定義的,所以我似乎沒有能力在後面的代碼中引用它。該列表框作爲參數傳遞到我認爲的對象發件人的selectionchanged事件中 - 我可以將它轉換爲列表框並將其清除。我不確定執行此操作所需的語法。 – Peter

+2

是的,你可以施放它。 Pratorians示例可以像這樣擴展:(sender as ListBox).SelectedIndex = -1; –

1

如果您不能更改後面代碼中的SelectedIndex,而不是檢測SelectionChanged事件,則可以檢測到ListBoxItem上的Tap事件。