- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我的意图是,当用户单击一个按钮导航到另一个页面时,他将看到一个进度条,直到另一个页面完全加载为止。
我已经找到了很多关于这个主题的教程,但是它们都使用了代码隐藏。我希望能够不使用代码隐藏(如果可能)。我目前正在将 MvvmLight 与 ViewModelLocater 结合使用。
我已经在我的 View 中制作了一个可以显示 Progressring 的虚拟网格,并且我已将其事件和可见属性绑定(bind)到我的 View 模型。
<Grid Background="Transparent" Visibility="{Binding LoadCircleVisibility}" Height="{Binding HeigthScreen}" Width="{Binding WidthScreen}" >
<ProgressRing Height="50" Width="50" IsActive="{Binding ProgressRingActive}" Visibility="{Binding ProgressRingVisibility}"></ProgressRing>
</Grid>
例如,当我从 wcf 服务获取数据时,我已经可以显示它了,但当用户导航到另一个页面时则不会。
此时我正在尝试通过消息传递来实现这一点,但我不确定应该将消息放在哪里才能使我的进度条可见。
我的消息将始终通过此方法为进度条设置正确的值:
private void ProggressBarVisible(bool visible)
{
if (visible)
{
ProgressRingVisibility = Visibility.Visible;
LoadCircleVisibility = Visibility.Visible;
}
else
{
ProgressRingVisibility = Visibility.Collapsed;
LoadCircleVisibility = Visibility.Collapsed;
}
ProgressRingActive = visible;
}
但是当我想导航到另一个页面时,没有进度条。
所以问题是如何在 mvvmlight 加载新页面时显示进度条。
编辑:部分解决方案:
我的导航速度较慢并锁定 uithread 的原因是它必须构建整个页面。我通过确保将所有方法和逻辑放入不同的线程来更改此设置,这确保我的 uithread 立即继续,并且我可以在第二个页面上显示负载循环,同时它正在执行逻辑和方法。
最佳答案
我不知道如何在没有代码隐藏的情况下做到这一点您可以将根面板添加到您的应用程序并将自定义控件放在那里。此自定义控件仅用于显示/隐藏预加载器。当您卸载第一页(或其他事件)时,您将显示自定义预加载器;当您完成第二页的下载后,您将隐藏自定义预加载器。
关于c# - 在页面之间导航期间显示 Progressring,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16163389/
我正在构建一个需要从互联网下载 RSS 数据的 Windows 8 应用程序。 有一个等待的 GetFeedsAsync() 方法负责此操作,在我的应用程序主页的(异步)LoadState 方法中调用
我的意图是,当用户单击一个按钮导航到另一个页面时,他将看到一个进度条,直到另一个页面完全加载为止。 我已经找到了很多关于这个主题的教程,但是它们都使用了代码隐藏。我希望能够不使用代码隐藏(如果可能)。
我正在编写一个小型 UWP 项目,也使用 MVVM 模式(MVVM Light 框架)进行学习,并且在许多场景和控件中遇到了绑定(bind)问题。 我已经努力将其中一个隔离到可用的迷你示例项目中 he
我想创建一个带有两个网格的自定义用户控件,我想在其中加载图像,并且在加载图像之前我想显示 progressRing 控件。当我添加第二个 ProgressRing 时出现问题。我的 XAML 如下所示
我正在使用 WPF 中的排序和分组填充 DataGrid,我想为用户实现一个进度指示器,让他们知道当前查询仍在后台运行。我正在尝试使用 Mahapps 的 ProgressRing 但我不知道如何实现
看起来 MahApps.Metro ProgressRing 控件默认的最小尺寸为 60x60。 ProgressRing 有一个名为“IsLarge”的属性,但即使将其设置为“False”,它似乎也
引用http://briandunnington.github.io/progressring-wp8.html对于进度指示器的一个有趣的新实现,我想使 ProgressRing 控件适应 Windo
Window 中有一个TreeView。我想在事件中从 ItemsSource 加载 TreeViewItems,同时显示 ProgressRing(MahApps.Metro.Controls)。
我是一名优秀的程序员,十分优秀!