在C#中,实现Loading状态的切换逻辑通常涉及到以下几个步骤:
bool
)类型的变量,如isLoading
。private bool isLoading;
private void SetLoadingState(bool newState)
{
isLoading = newState;
}
SetLoadingState(true)
来设置加载状态为true
;在数据加载完成后,调用SetLoadingState(false)
来设置加载状态为false
。// 开始加载数据
SetLoadingState(true);
// 模拟数据加载过程
Task.Run(() =>
{
Thread.Sleep(2000); // 模拟耗时操作
SetLoadingState(false); // 数据加载完成,设置加载状态为false
});
INotifyPropertyChanged
接口来实现数据绑定。public class MainViewModel : INotifyPropertyChanged
{
private bool _isLoading;
public bool IsLoading
{
get { return _isLoading; }
set
{
_isLoading = value;
OnPropertyChanged();
}
}
// ...其他代码...
private void SetLoadingState(bool newState)
{
IsLoading = newState;
}
// ...其他代码...
}
然后,在XAML中将UI元素(如进度条)的可见性绑定到IsLoading
属性。
这样,每当IsLoading
属性发生变化时,进度条的可见性也会相应地发生变化。