我已经创建了一个忙碌指示器——基本上是一个旋转的徽标动画。我将其添加到登录窗口,并将Visibility属性绑定到我的ViewModel的BusyIndicatorVisibility属性。
当我点击登录时,我希望在登录过程中出现旋转效果(它调用Web服务来确定登录凭据是否正确)。然而,当我将可见性设置为可见,然后继续进行登录时,旋转图标不会出现直到登录完成。在Winforms老式编码中,我会添加一个Application.DoEvents。如何在MVVM应用程序中使WPF中的旋转图标出现?
代码如下:
当我点击登录时,我希望在登录过程中出现旋转效果(它调用Web服务来确定登录凭据是否正确)。然而,当我将可见性设置为可见,然后继续进行登录时,旋转图标不会出现直到登录完成。在Winforms老式编码中,我会添加一个Application.DoEvents。如何在MVVM应用程序中使WPF中的旋转图标出现?
代码如下:
private bool Login()
{
BusyIndicatorVisibility = Visibility.Visible;
var result = false;
var status = GetConnectionGenerator().Connect(_model);
if (status == ConnectionStatus.Successful)
{
result = true;
}
else if (status == ConnectionStatus.LoginFailure)
{
ShowError("Login Failed");
Password = "";
}
else
{
ShowError("Unknown User");
}
BusyIndicatorVisibility = Visibility.Collapsed;
return result;
}