我在这里有点困惑:
Windows窗体应用程序,使用C#。
假设我有一个文本框。当用户在该文本框中输入文本并将其提交给服务器时,它会填充用户写入内部List<string>
的内容。
现在,假设当用户按下键盘上的ctrl + UP
时,我希望它返回他们输入的最后一条消息(这实际上是添加到List<string>
集合的最后一条消息。
如果用户按下键盘上的ctrl + Down
,它应该返回在上一次up
被按下之前发生的上一条消息。
但奇怪的是,我对如何实现这一点感到十分困惑。哈哈,我知道这就像超级简单,但奇怪的是,我似乎无法弄明白。
inputPublicHistory[inputPublicHistory.Count - 1]
似乎是拉动以前历史记录的合理方法,就像我按“向上”一样。但是,显然,没有一种跟踪指数所在位置的方法,很难比较。
inputPublicHistoryIndex +=1
我可以在用户按下键盘上的Ctrl + Up
之后添加,增加索引,然后返回该结果,但这是否真的是一种有效/正确的方法呢?
也许我只是在思考这个问题,也许你们中的一个人可以帮我解决这个简单的任务。
答案 0 :(得分:2)
除了保存用户的最新输入时,我会做很多事情,将索引跟踪设置为.Count - 1.如果按CTRL + Up并且索引为.Count - 1,向他们显示列表中的最后一项。如果然后按CTRL +向下键,则递减索引并向其显示该项,但不要(显然)低于0。