我在listView更新数据时候 它的滚动条都会回到最上面 
请问我想它原来在哪里就在哪里应该怎么做

解决方案 »

  1.   

    设置listview的选择项
    listView1.Items[1].Selected = true;
      

  2.   

    更新前记下原来的索引值,
    更新后用
    listView1.Items[index].EnsureVisible();
      

  3.   

    this.listBox1.SetSelected(itemIndex, true); 
    ListBox.SelectIndex=ListBox.Items.Count-1; 
     
      

  4.   

    大概思路就是你更新前记录一下当前选中行的所有index,然后更新后在设置他的选中行为这行
    如:this.ListView1.Item[Index]=true;
      

  5.   

    首先在单击单元格时获得当前行的索引        int index;//当前行索引
            private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
            {
                index = this.dataGridView1.CurrentRow.Index;
            }
    然后在你刷新数据的方法中调用以下,就可实现定位
          this.dataGridView1.DataSource = ds.Tables[0];
                dataGridView1.Rows[index].Selected = true;        
                this.dataGridView1.FirstDisplayedScrollingRowIndex = index;
      

  6.   

    this.listBox1.SetSelected(itemIndex, true); 
    ListBox.SelectIndex=ListBox.Items.Count-1;