|
<ContentPage.Content>
<StackLayout>
<SearchBar x:Name="barraBusqueda"
TextChanged="BarraBusqueda_TextChanged"
BackgroundColor="Black"
TextColor="#7FFF00"
FontSize="20"
Placeholder="BUSCAR..."
Text="{Binding SearchedText, Mode=TwoWay}"
PlaceholderColor="Chartreuse"
HeightRequest="50">
</SearchBar>
<syncfusion:SfListView x:Name="listView">
<syncfusion:SfListView.ItemTemplate>
<DataTemplate>
<local:TemplateViewCell/>
</DataTemplate>
</syncfusion:SfListView.ItemTemplate>
</syncfusion:SfListView>
</StackLayout>
</ContentPage.Content> |
|
public partial class SearchPage : ContentPage
{
SearchBar searchBar;
ObservableCollection<Contacts> FilteredSource { get; set; }
public SearchPage ()
{
InitializeComponent ();
}
private void BarraBusqueda_TextChanged(object sender, TextChangedEventArgs e)
{
searchBar = (sender as SearchBar);
FilteredSource = new ObservableCollection<Contacts>();
if (searchBar == null || searchBar.Text == "")
{
listView.ItemsSource = null;
return;
}
foreach (var item in viewModel.contactsinfo)
{
if (item.ContactName.ToLower().Contains(searchBar.Text.ToLower()))
FilteredSource.Add(item);
}
listView.ItemsSource = FilteredSource;
}
} |
|
private void BarraBusqueda_TextChanged(object sender, TextChangedEventArgs e)
{
lstData.DataSource.Filter = FilterContacts;
lstData.DataSource.RefreshFilter();
}
private bool FilterContacts(object obj)
{
if (barraBusqueda == null || barraBusqueda.Text == null)
return true;
var contacts = obj as Employee;
if (contacts.EmpName.ToLower().Contains(barraBusqueda.Text.ToLower()))
return true;
else
return false;
} |
|
List<Employee> vList = new List<Employee>();
public MainPage()
{
InitializeComponent();
vList = vm.GetAllEmployees();
lstData.ItemsSource = vList;
}
private void BarraBusqueda_TextChanged(object sender, TextChangedEventArgs e)
{
lstData.ItemsSource = vList.Where(w => w.EmpName.ToLower().Contains(barraBusqueda.Text.ToLower()));
} |