我创建了一个包含listview和ISingleOperation的数据刷新表单。
然后我在ViewModel中创建了命令。
public IRelayCommand LoadInvoicesCommand
{
get
{
return GetCommand(() => Execution.ViewModelExecute(new LoadInvoicesOperation(_model), 10000));
}
}
ISingleOperation运行良好并返回
new Result() { ResultAction = ResultType.None };
刷新操作绑定良好
RefreshCommand="{Binding LoadInvoicesCommand}"
但刷新指标"挂起"并没有消失,这里有什么不对?
答案 0 :(得分:2)
您需要将名为IsRefreshing的ListView
中的第二个属性绑定到ViewModel。这是一个布尔属性,负责告诉ListView
刷新已经开始/完成。
ListView XAML
的示例<ListView
VerticalOptions="FillAndExpand"
IsPullToRefreshEnabled="true"
RefreshCommand="{Binding LoadInvoicesCommand}"
IsRefreshing="{Binding IsRefreshing, Mode=OneWay}"
ItemsSource="{Binding YourItemSource}"
ItemTemplate="{StaticResource ItemTemplate" />
您的ViewModel需要一个名为IsRefreshing
的公共属性,当您完成刷新命令时,您需要将其设置为false
。