2016-01-21 55 views
0

我有下面的代碼,當按下控件(按鈕1)時,選擇列表視圖中的下一個項目。如果我點擊button1轉到下一個項目,它將工作,但所選項目不同步。要測試這個,只需點擊幾次按鈕,然後在鍵盤上向上或向下按下。它不會按照它應該去的前一個/下一個項目。帶有箭頭鍵的listview導航不工作,因爲它應該

有沒有人遇到過這個問題?我錯過了什麼?

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Windows.Forms; 

namespace lv_issue 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
      listView1.Items[0].Selected = true; 
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 

      if (listView1.SelectedItems.Count == 0) 
       return; 
      listView1.Focus(); 

      int s = listView1.SelectedItems[0].Index; 

      listView1.Items[s].Selected = false; 

      if (s < listView1.Items.Count - 1) 
       s++; 

      listView1.SelectedItems.Clear(); 
      listView1.Items[s].Selected = true; 

     } 
    } 
} 

回答

0

找到了解決辦法 - 除了一個需要將焦點設置到新選擇的項目與

listview1.Items[s].Focused=true; 

然後everyting工作,因爲它應該

上面的代碼