首先,我一直在阅读很多关于这个问题,但在我的脑海里并不清楚。图形用户界面和数据加载并行
我正在开发一个WPF应用程序,意味着从数据库,本地/远程文件,Web服务等加载大量信息。比方说,这些数据被加载到datagrids和这种控件中。
我的应用工作正常,但数据加载过程会产生不良的用户体验。例如,我将主要关注于主窗口,该窗口需要大量数据,因此需要2-3秒才能加载并显示在网格中。
当我第一次执行它时,我真的很想在我的应用程序中看到GUI是立即加载的,然后让数据加载工作,显示一个微调器,等待对象或网格上的任何东西,直到这些进程是异步?)加载。在这种情况下(在我的测试中),无论加载数据的顺序(在代码中,我的意思是):在构造函数中,在几个事件的末尾(初始化,加载等) ),在ShowDialog指令前面的Init方法中... GUI窗口直到我的网格加载了东西才会出现。
我想我应该处理线程,有一个用于GUI,另一个用于加载数据的异步,但我已经用Dispatcher,Delegates等进行了一些测试,但没有成功。
总之,目标是尽可能快地加载GUI,然后加载数据并刷新GUI。
现在我有点困惑,我读了关于线程,调度程序等问题,但我不知道它们是否适合我的需求。我希望你能告诉我要遵循的方式。
Regards, Borja。
我懒得看完你在这里写的所有内容。改为发布一些相关的代码 –
BackgroundGround工作和优先级绑定。并清理问题。 – Paparazzi
主要的解决方案是避免大数据集(毕竟,它是一个GUI,用户为U)。第二种选择:从最小填充的虚拟机开始,并从线程更新列表(可观测数据)。 –