C# ListBox自动滚动方法

1、方法1:添加记录后,选择最后一条记录,让滚动条滚动到底部,再自动取消

listBox1.Items.Add(t + ":a good day");
listBox1.SelectedIndex = listBox1.Items.Count - 1;
listBox1.SelectedIndex = -1;    //是否取消选中行

2、方法2:通过计算显示行数,设置TopIndex属性,实现滚动目的

listBox1.Items.Add(t + ":a good day");
listBox1.TopIndex = listBox1.Items.Count - (listBox1.Height / listBox1.ItemHeight);

3、方法3:先计算滚动条是否在底部,然后添加记录,根据需要确定是否自动滚动

bool scoll =false;
            if (listBox1.TopIndex == listBox1.Items.Count - (listBox1.Height / listBox1.ItemHeight))
                scoll = true;
            listBox1.Items.Add(t + ":a good day");
            if(scoll)
                listBox1.TopIndex = listBox1.Items.Count - (listBox1.Height / listBox1.ItemHeight);

4、如果想让最新记录在顶部,逆序排列数据,可使用Insert属性

listBox1.Items.Insert(0,t + ":a good day");

你可能感兴趣的:(C#,c#,前端,开发语言)