我在windows窗体中创建了一个聊天室,有一个列表框,显示所有收到的消息,当然,我把聊天框设置为当有新消息发送时自动滚动到底部。但是,如果用户正在查看旧消息,而有新消息发送,滚动条会立即跳到底部。
我在想我可以做些什么
if(scrollBarPosition != scrollBarBottom) doNotJumpToBottom
除了我找不到任何滚动条位置变量。下面是我跳转到底部的代码:
chatListBox.TopIndex = chatListBox.Items.Count - 1;
1条答案
按热度按时间tvmytwxo1#
我建议你在你的列表框旁边添加一个复选框,以允许或防止自动化。
例如,如果您决定选中checkBox,则listBox将跟随传入事件到达底部,您可以执行以下操作:
因此(在该示例中),如果未选中该框,则用户可以自由地向上或向下滚动到他想要的位置,并通过选中该框来继续查看传入的项目。