title: Why items on ListView in Xamarin do not disappear after object is removed from binded list, even if ItemSource property is reset?
body: <p>I'm currently learning Xamarin and are at the stage of examining ListView. I've noticed that if I bind ListView to a List and remove an item from it, the listview will not display this change. I get it that I need to use ObservableCollection to have it work automatically (or have a collection implement proper interface), but I just would like to understand why doesn't it work even when i reset the ItemsSource property of ListView after the removal. Here's the code:</p>
  
  <pre><code> namespace Lists
  {
      [XamlCompilation(XamlCompilationOptions.Compile)]
      public partial class ListsOne : ContentPage
      {
         List&lt;Contact&gt; _contacts = new List&lt;Contact&gt; {
                      new Contact{ Name = "Mosh", Number = "1234566", ImageUrl="http://lorempixel.com/100/100/people/1"},
                      new Contact { Name = "Josh", Number = "1236578" , ImageUrl = "http://lorempixel.com/100/100/people/2"}};
  
          IEnumerable&lt;Contact&gt; GetContacts(string searchText = null)
          {  
  
              if (String.IsNullOrWhiteSpace(searchText))
              {
                  return _contacts;
              }
  
              return _contacts.Where(c =&gt; c.Name.StartsWith(searchText));
          }
  
          public ListsOne()
          {
              InitializeComponent();            
              listView.ItemsSource = GetContacts();
          }       
  
          private void Delete_Clicked(object sender, EventArgs e)
          {
              Contact contact = (sender as MenuItem).CommandParameter as Contact;
              _contacts.Remove(contact);
              listView.ItemsSource = GetContacts();
  
          }
  
          private void SearchBar_TextChanged(object sender, TextChangedEventArgs e)
          {
              listView.ItemsSource = GetContacts(e.NewTextValue);
          }
      }
  }
  </code></pre>
  
  <p>As you can see in the Delete_Clicked method, after removing contact from _contacts, I reset the ItemsSource, but it will have no effect on the app, even though the pretty much same implementation for SearchBar_TextChanged works (if I recall correctly, am at work right now). Any insight on how it works? Sorry if it's dumb, but I am just learning.</p>