当等待用户控件初始化时显示忙指示器

3
我的应用程序在启动时需要在MainWindow中加载一个用户控件。 然而,用户控件的初始化很慢。(不是因为加载业务数据,我已经将UI与业务层分离) 我想做的是,在等待用户控件初始化时,忙指示器会出现,并在用户控件初始化完成后消失。 目前,我在MainViewModel中有一个IsBusy属性,它与MainWindow中的忙指示器进行数据绑定。 子用户控件通过contentcontrol显示。
presenter.Content = new ChildUserControl(); 
//presenter is the contentcontrol in MainWindow

然而,如何同时运行初始化和繁忙指示器的显示呢?似乎我需要不同的线程来处理这个问题。
然而,在另一个线程上运行初始化,同时让主UI线程显示繁忙指示器是行不通的,因为在另一个线程中的子控件无法放置在其父控件中,而这种情况下父控件是MainWindow。
有什么想法吗?
2个回答

1

太棒了!这完全符合我的目的! - user2127480

0

如何显示动画加载光标?Windows已经处理了鼠标的线程。我以前遇到过这个问题,我在另一个线程上实现了自己的加载动画,但是我遇到了渲染优先级的问题,导致主执行代码变慢,除非鼠标光标在进度对话框上移动。https://dev59.com/pXVC5IYBdhLWcg3wZwPj#307020


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接