Xamarin形式 - 与
问题描述:
页
负荷异步数据加载中选取器控件我有一个Xamarin的应用程序,我已经使用Xamarin,有一个WCF Web服务的工作最近纳入网络服务,并能正常工作(http://developer.xamarin.com/guides/cross-platform/xamarin-forms/web-services/consuming/wcf/)Xamarin形式 - 与
有一个ListView教程,这可以很好地使用控制器中的命令调用异步Web服务,并将其绑定到Listview。
因此,对于我的问题,当表单加载时将异步Web服务数据加载到xamarin选取器控件中的最佳方法是什么?
我试着做在视图模型构造函数的东西,但数据才回来的控制数据呈现....
public class UserPreferencesViewModel : BaseViewModel
{...
public UserPreferencesViewModel()
{
LoadDropdownData();
//carries on while data is being queried
}
async Task LoadDropdownData()
{
Services = new ObservableRangeCollection<Service>();
var services = await App.ServiceManager.GetServiceDataAsync();
Services.ReplaceRange(services);
}
而且我似乎无法使用命令对象,因为没有RefreshCommand属性。
我也有偏好数据,我需要设置选择器值,并想知道如何最好地做到这一点。
希望这是有道理
答
分配的xamarin选择器观察集合和这个工作。
要么使用async等待正确..所以在你的构造函数:await LoadDropdownData或使用ObservableCollections如果你的数据来自WCF服务的异步将填充ListView – Unlockedluca
你不能在构造函数中使用'await',所以ObservableCollections看起来像前锋?我已经使用ObservableRangeCollections作为服务类型。 –