【发布时间】:2010-09-28 11:33:02
【问题描述】:
我需要在添加项目几秒钟后从列表中删除它们。我现在有一个 ObservableCollection,我向其中添加了一些消息。我需要将它们删除,比如说在添加它们 5 秒后。我试图创建一个负责添加项目和设置计时器的函数:
public void AddInfoItem(string info)
{
infoList.Add(info);
Timer newTimer = new Timer(5000);
newTimer.Elapsed += new ElapsedEventHandler(this.TimerFunction);
newTimer.Enabled = true;
newTimer.Start();
}
public void TimerFunction(Object sender, EventArgs e)
{
infoList.Clear();
}
我什至没有发送任何参数应该删除哪个项目,因为第二个函数引发了异常。有人可以描述一个适当的解决方案来添加项目并在一段时间后将其删除吗?
抱歉没有早点写。例外是
这种类型的collectionview不支持从与dispatcher线程不同的线程更改其sourcecollection
【问题讨论】:
-
正如 Val 所说 - 有什么例外?
标签: wpf timer observablecollection