我試圖編程兩個按鈕來模仿向上/向下箭頭鍵行爲,這意味着當我按下按鈕時,它向上移動我的列表框中的一個項目等等。我寫了下面的代碼:以編程方式選擇下一個列表框項目
private void mainlistup(object sender, System.Windows.RoutedEventArgs e)
{
if (listBox_Copy.SelectedIndex != -1 &&
listBox_Copy.SelectedIndex < listBox_Copy.Items.Count &&
listBox_Copy.SelectedIndex !=1)
{
listBox_Copy.SelectedIndex = listBox_Copy.SelectedIndex - 1;
}
}
private void mainlistdown(object sender, System.Windows.RoutedEventArgs e)
{
if (listBox_Copy.SelectedIndex < listBox_Copy.Items.Count &&
listBox_Copy.SelectedIndex != -1)
{
listBox_Copy.SelectedIndex = listBox_Copy.SelectedIndex + 1;
}
}
這個工作,但是,按壓項目失去了選擇按鈕時...選擇index的設置正確(其他databinded物品,綁定到選定的項目顯示正確的值)但列表框項目不再突出顯示。如何將選定項目設置爲突出顯示?
是的,這樣更好。只添加如果(listbox_copy.selectedindex == 0){listbox_copy.focus();},因爲如果第一個項目被選中,我再次按下它刪除焦點.. – internetmw 2010-07-28 13:48:54
就個人而言,我不會打擾封裝的Focus()方法一個if語句。我只是點擊每個按鈕來完成上/下。 – GenericTypeTea 2010-07-28 14:03:08
你真好!謝謝 – internetmw 2010-07-28 14:05:21