我有一个 UI 设置,其中有一个TabLayoutPanel
. 每个选项卡对应一个面板,包裹在ScrollPanel
. 基本上这是一个聊天程序,用户可以发布将出现在面板中的消息;这意味着消息可以出现在当前未聚焦的选项卡中。
现在我想做的(这里简化了)是ScrollPanel
每当有消息到达时滚动到底部,基本上是为了让最新的消息始终在视图中。这在选定的选项卡中工作正常,但在选项卡中没有问题。
Basically, when the amount of messages in the tab gets enough that the scrollbar is needed, it doesn't seem to register until the tab is selected. 我可以打电话getVerticalScrollPosition()
,它会返回 0,即使我知道那里还有很多东西不适合;如果我切换到选项卡,滚动条就在顶部。如果此时我再次切换,它将从这一点开始工作,所以问题是当它从不显示滚动条变为显示它时,在选择选项卡之前似乎没有注册。
有没有人建议绕过这种行为?我试过简单地将滚动条设置为始终显示,但这根本没有帮助。