我必须添加显示导入进度的文本。现在我们有导入条显示progess但我需要在栏上方添加一些文字,说“导入数据 - (#of#complete)。”
例如,如果我们导入100个数据,则可能会说“导入数据 - (完成100个中的10个)。”
请建议我们是否可以显示正在进行的操作。
答案 0 :(得分:0)
在每次导入迭代后,您可以生成一些事件ItemImported,并在UI端通过更改进度条的文本(在进度条下)对此事件作出反应。
ItemImported可以在您的导入类中。 在“UI方面”下我指的是负责与UI交互的类,例如一些ViewModel或只是知道UI上的conrols的MainWindow.cs。
要更改UI上的文本,您需要使用例如Dispatcher.Invoke(如果它是桌面应用程序)或在导入过程中正确地与UI交互。
答案 1 :(得分:0)
对于一个简单的解决方案,我认为您可以批量发布数据。假设您有100个数据,然后在每次迭代时发布10个数据,并且OnSuccess函数,您只需更新您的UI。您可能还需要非常小心异步请求和回滚机制,它在迭代中以某种方式失败,您需要擦除发布的数据。
另一种方法是使用一些实时技术,例如SignalR
希望我的想法能以某种方式帮助你。