在C#中使用Xamarin Forms自动完成

时间:2015-01-16 12:20:20

标签: xamarin xamarin.forms

我正在尝试使用Xamarin Forms创建自动完成文本条目。任何人都可以帮我为C#中的自动完成文本字段创建自定义渲染器。我正在使用MVVM概念。

1 个答案:

答案 0 :(得分:0)

您可以使用以下组件来实现它。

带有TextChanged事件的输入字段。 用于显示数据集的ListView。 作为第一步,您可以在具有垂直对齐的StackLayout中创建Entry和ListView。将ListView的ItemSource设置为您的数据集。在函数中为TextChanged事件添加以下代码

void OnTextChanged(object sender, EventArgs args)
{
    Site_listView.ItemsSource = vm.SiteList.Where(x => x.siteName.ToLower().Contains(siteNameEntry.Text.ToString().ToLower())).ToList();

}

Site_listView,siteNameEntry分别是x:ListView和Entry的名称

您可以在列表视图中使用ItemSelected / ItemTapped事件从列表中选择项目并将其分配给Entry。此外,您还可以使用聚焦,未聚焦事件来设置列表的可见性。