带箭头键的列表视图导航无法正常工作

时间:2016-01-21 15:55:19

标签: c# .net listview

我有以下代码,当按下控件时(button1)选择列表视图中的下一个项目。如果我单击button1转到下一个项目它将工作,但所选项目不同步。要测试这个,只需按几次按钮,然后向上或向下按键盘。它没有按原样进入上一个/下一个项目。

有没有人遇到过这个问题?我错过了什么?

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;

        }
    }
}

1 个答案:

答案 0 :(得分:0)

找到解决方案 - 除上述代码外,还需要将焦点设置为新选择的项目

listview1.Items[s].Focused=true;

然后每个人都应该按原样运作