如何滚动到 ListBox 底部?

How to scroll to bottom of ListBox?(如何滚动到 ListBox 底部?)
本文介绍了如何滚动到 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 底部?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

DispatcherQueue null when trying to update Ui property in ViewModel(尝试更新ViewModel中的Ui属性时DispatcherQueue为空)
Drawing over all windows on multiple monitors(在多个监视器上绘制所有窗口)
Programmatically show the desktop(以编程方式显示桌面)
c# Generic Setlt;Tgt; implementation to access objects by type(按类型访问对象的C#泛型集实现)
InvalidOperationException When using Context Injection in ASP.Net Core(在ASP.NET核心中使用上下文注入时发生InvalidOperationException)
LINQ many-to-many relationship, how to write a correct WHERE clause?(LINQ多对多关系,如何写一个正确的WHERE子句?)