本文介绍了如何滚动到 ListBox 底部?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用 Winforms ListBox 作为事件的小列表,并希望填充它以便最后一个事件(底部)可见.SelectionMode 设置为无.用户可以滚动列表,但我希望它从滚动到末尾开始.

I am using a Winforms ListBox as a small list of events, and want to populate it so that the last event (bottom) is visible. The SelectionMode is set to none. The user can scroll the list but I would prefer it start out scrolled to the end.

鉴于缺乏对 ScrollIntoViewEnsureVisible 等内容的支持,我假设我需要创建一个继承自 ListBox 的自定义控件;但是我不确定从那里做什么.

Looking at the lack of support for things like ScrollIntoView, EnsureVisible, I am assuming I will need to create a custom control that inherits from ListBox; however I'm not sure what to do from there.

一些指针?

推荐答案

我相信您可以通过设置 TopIndex 属性适当.

I believe you can do that easily by setting the TopIndex property appropriately.

例如:

int visibleItems = listBox.ClientSize.Height / listBox.ItemHeight;
listBox.TopIndex = Math.Max(listBox.Items.Count - visibleItems + 1, 0);

这篇关于如何滚动到 ListBox 底部?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-23 10:05