我有一个树视图,里面有一棵简单的树。
关于如何解决我的问题,我有一个非常简单的问题。
一旦用户选择了一个新的树项目,我就会使用SelectedItemChanged事件在后台运行一个小进程。该过程最多需要半秒到1.5秒。
问题是GUI似乎运行得很慢。在后台运行的进程完成执行之前,所选的树项目将突出显示为蓝色。
我认为这将使GUI看起来运行得更流畅,如果我能在树项目突出显示为蓝色之后运行一些进程。对于用户来说,他们在视觉上看到他们更改了项目,当他们看到项目更改时,流程可能已经执行完毕。
有人知道怎么做吗?
发布于 2015-06-12 04:08:55
将"SelectedItemChanged“事件中的进程派生到新线程中:
Task.Factory.StartNew(() =>
{
// your code //
};如果您需要在该进程中引用UI对象,则需要使用正确的dispatcher调用来访问它们:
Dispatcher.BeginInvoke(new Action(() => { // ui thread tasks here // };https://stackoverflow.com/questions/30790379
复制相似问题