使用Xamarin.Forms,如何在Picker
打开之前立即填充Picker
项目?
我们在同一页面上有许多选择器,并且预先填充所有项目效率很低,因为有些查询很昂贵。作为参考,我试图首先使用Xamarin.Android,并在撰写本文时使用最新的稳定版本 - 1.2.36257。
我试过了:
Focused
事件 - 这几乎可以使用,但Items
的更改只有在下次Picker
打开时才会应用。Tapped
事件似乎没有被触发。也许它不适用于Picker
。答案 0 :(得分:1)
Xamarin.Forms Picker 从我所看到的内容中露出任何东西,这将使您实现您想要的目标。
TapGesture 可能很麻烦。例如,我很快在 WindowsPhone 上尝试了,而且也没有认识到 TapGesture 。您还可以使用不同的控件找到一些不同的行为 - 跨平台的响应不一致。
我尝试连接到 Picker PropertyChanged / PropertyChanging ,这与尝试挂钩您经历过的专注事件处理程序,只有在最初显示选择器后才能使用它。
解决这个问题的唯一方法是编写自定义渲染器来实现您想要的目标。
然后,您可以在其中公开自定义事件,例如OnBeforeAppearing,这样您就可以在使用时从页面预先加载选择器和所需的项目。