如何将listview的显示项上移,下移,置顶,置尾

解决方案 »

  1.   

    参考
    http://www.cnblogs.com/wf5360308/articles/1258212.html
      

  2.   

    以前写的一个,希望对你有帮助
    private void btnHome_Click(object sender, EventArgs e)
            {
                //LISTVIEWの中行は暇ではありません
                if (lvwDisplay.Items.Count > 0)
                {
                    //設置の容器のコンポーネントの上の活動のコンポーネント
                    ActiveControl = this.lvwDisplay;                //選ぶ行数
                    int selected = lvwDisplay.FocusedItem.Index;                //選ぶ行数ために0
                    if (selected == 0)
                    {
                        //第一行を選びます
                        lvwDisplay.Items[0].Selected = true;
                    }
                    else
                    {
                        //もとは選ぶ行数を選びません
                        lvwDisplay.Items[selected].Selected = false;
                        lvwDisplay.Items[selected].Focused = false;                    //第一行を選びます
                        lvwDisplay.Items[0].Focused = true;
                        lvwDisplay.Items[0].Selected = true;
                    }
                }
            } private void btnUpNext_Click(object sender, EventArgs e)
            {
                //LISTVIEWの中行は暇ではありません
                if (lvwDisplay.Items.Count > 0)
                {
                    //設置の容器のコンポーネントの上の活動のコンポーネント
                    ActiveControl = this.lvwDisplay;                //選ぶ行数
                    int selected = lvwDisplay.FocusedItem.Index;                if (selected == 0)
                    {
                        //第一行を選びます
                        lvwDisplay.Items[0].Selected = true;
                    }
                    else
                    {
                        //もとは選ぶ行数を選びません
                        lvwDisplay.Items[selected].Selected = false;
                        lvwDisplay.Items[selected].Focused = false;                    //行数を選びます
                        lvwDisplay.Items[selected - 1].Focused = true;
                        lvwDisplay.Items[selected - 1].Selected = true;                }
                }
            } private void btnDownNext_Click(object sender, EventArgs e)
            {
                //LISTVIEWの中行は暇ではありません
                if (lvwDisplay.Items.Count > 0)
                {
                    //設置の容器のコンポーネントの上の活動のコンポーネント
                    ActiveControl = this.lvwDisplay;                //選ぶ行数
                    int selected = lvwDisplay.FocusedItem.Index;                //選ぶ行数が最后一行
                    if (selected == lvwDisplay.Items.Count - 1)
                    {
                        //最后一行を選びます
                        lvwDisplay.Items[selected].Selected = true;
                    }
                    else
                    {
                        //もとは選ぶ行数を選びません
                        lvwDisplay.Items[selected].Selected = false;
                        lvwDisplay.Items[selected].Focused = false;                    //行数を選びます
                        lvwDisplay.Items[selected + 1].Focused = true;
                        lvwDisplay.Items[selected + 1].Selected = true;                }
                }
            } private void btnEnd_Click(object sender, EventArgs e)
            {
                //選ぶ行数が最后一行
                if (this.lvwDisplay.FocusedItem.Index == lvwDisplay.Items.Count - 1)
                {
                    //設置の容器のコンポーネントの上の活動のコンポーネント
                    ActiveControl = lvwDisplay;
                    return;
                }
                else
                {
                    //LISTVIEWの中行は暇ではありません
                    if (lvwDisplay.Items.Count > 0)
                    {
                        //設置の容器のコンポーネントの上の活動のコンポーネント
                        ActiveControl = this.lvwDisplay;                    //選ぶ行数
                        int currentRowIndex = this.lvwDisplay.FocusedItem.Index;                    //LISTVIEWの中行数
                        int selected = lvwDisplay.Items.Count;                    //行数を選びます
                        lvwDisplay.Items[selected - 1].Focused = true;
                        lvwDisplay.Items[selected - 1].Selected = true;                    //もとは選ぶ行数を選びません
                        lvwDisplay.Items[currentRowIndex].Focused = false;
                        lvwDisplay.Items[currentRowIndex].Selected = false;
                    }
                }
            }
      

  3.   

    //置底
    int icount=this.listView1.Items.count-1;
    //置顶
    icount=0;
    this.listView1.Focus();
    this.listView1.Items[icount].Selected = true;
    this.listView1.EnsureVisible(icount);