繁体   English   中英

我如何检查清单 <string> 已经改变了?

[英]How can i check if a List<string> have been changed?

我有一个列表,每X秒更新一次。 我想知道每X秒是否有新项目添加到列表中,以及哪些项目。

例如我在列表中:

index 0 : this is a test
Index 1 : this is number one

然后在X秒后添加了一个新项目:

index 0 : this is a test
Index 1 : this is number one
Index 2 : Im a new item

我想做的是检查是否有新项目,它可以是X秒钟后一个项目或20个项目,所有这些项目都应添加到列表的顶部。 因此,每次最后一个项目将是第一个。 如果仅添加了一个项目,则如果添加了20个项目,则他将是第一个项目,则项目20将成为列表中的第一个项目,而20个项目中的项目1将是第20个项目。

我以前问过,但现在我知道了我需要的东西。

而且仅执行inser(0,...)是不好的。

newText.Add(t[i]);
newText.Add(dateTime[i]);
newText.Add(string.Empty);

如果我正在做newText.Insert(0,t [i]); 它不会在以后显示任何内容。 如果即时通讯使用Insert属性,它将无法构建列表,因为我希望它会在最后添加所有日期和时间以及空行...

那就是为什么我不使用插入。

编辑

我忘了提到我需要保持列表格式:

newText.Add(t[i]);
newText.Add(dateTime[i]);
newText.Add(string.Empty);

当我指的是最后一项时,我指的是最后3个索引。 列表中的每3个索引就像一个组/块。 列表格式如下:

索引0文字:hello world索引1日期和时间:2014年6月22日索引2空格/空白行:

因此,当我要移动到列表顶部的最后一个项目时,我的意思是,对于示例索引,索引28将在索引0处,然后索引29在索引1处,索引30在索引2处。因为在索引28中我有一个文本索引29日期和时间,索引30空行。

列表如下所示:

在此处输入图片说明

使用ObservableCollection<T>怎么样?

http://msdn.microsoft.com/library/ms668604(v=vs.110).aspx

这样,您可以实时监控列表。

还有可能,监视CollectionChanged事件并将其收集在第二个列表中,该列表每20秒清除一次

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM