繁体   English   中英

Xamarin.Forms ListView方法

[英]Xamarin.Forms ListView Approach

我正在创建Xamarin.Forms应用程序,并且在规划UI时遇到问题。 我有一个表格需要显示一个值,该值可以是多个值(超过80个选择)之一。 窗体上的ListView不切实际,因为用户必须能够从几个顶级分组中进行选择才能获得实际的可选项目。 例如:

类别1>子类别1-1>选项1 ...选项12子类别1-2>选项13 ...选项20类别2>子类别2-1>选项21 ...选项35子类别2-2 >选项36 ...选项50类别N>子类别N-1> .......子类别NX> .......

我有一个页面,列出每个类别,然后(一旦选中)每个子类别,最后列出选项。

我的问题是:在这种情况下,显示空白表单的最佳方法是什么(我尝试了一个Entry控件,但是找不到通过单击它导航到选择页面的方法),然后在形成。

理想情况下,UI看起来像一个Entry控件,并且一旦用户点击Entry控件便会打开选择页面。 这似乎是一种非常简单(并且可能很常见)的方法,所以我觉得我必须缺少一些基本知识。

提前致谢!

我将使用“按钮”和“标签”,在其中点击按钮将启动带有选择ListView的模态,完成选择后,值将显示在“标签”中。

Xamarin.Forms中的Button确实为您提供了Clicked事件或可绑定的Command属性,可以将其绑定到ViewModel来处理逻辑。

不幸的是,Entry对象没有“聚焦”事件或类似事件。 但是,这可以通过创建自定义Entry子类并为其编写客户渲染器来轻松实现。 这将允许您创建一个Focussed可绑定属性以供使用(有关示例和提示,请参见http://developer.xamarin.com/guides/cross-platform/xamarin-forms/custom-renderer/ )。

在我的应用程序中,我有一个巨大的搜索页面,其中包含各种ListView,用户可以在其中选择一个项目(直到4000个)或多个项目。
我已经通过使用Buttons(选择xx)实现了这一点,然后显示了一个PopUp-Control(来自XLabs)。 使用PopUp-Control,您无需调用其他页面,这将使整个逻辑更容易:-)。 在弹出窗口上,我显示一个条目和一个ListView。
一旦用户在条目中键入文本,列表(ListView的数据源)就会“即时”过滤到键入的文本。 即使使用4'000 List-ents,它也可以正常工作。
所以..我建议您以这种方式解决您的问题。
每次添加字符时,我都会通过键入的文本创建一个新列表,并将其重新分配给ListView。 因此,例如,您可以在PopUp上放置一个以上的条目,然后同时在List过滤更多的一个值,或者一一显示一个类别...

您可以在此处找到有关PopUp控件的更多信息:

如何使用PopUp-Control

希望这可以帮助...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM