I am trying to use the standard AutoSuggestBox
in a Windows Phone 8.1 XAML app, but it behaves really strangely.
In a simple demo, I have collection
Items = new ObservableCollection<string>
{
"a",
"b",
"c",
"d"
};
and he AutoSuggestBox in XAML:
<AutoSuggestBox ItemsSource="{Binding Items}" />
The problem is that no matter what I write to the AutoSuggestBox
, I always get all the items:
The documentation says next to nothing and I have not found any samples using this control.
Try the following code:
private void AutoSuggestBox_TextChanged(AutoSuggestBox sender,
AutoSuggestBoxTextChangedEventArgs args)
{
List<string> myList = new List<string>();
foreach (string myString in PreviouslyDefinedStringArray)
{
if (myString.Contains(sender.Text) == true)
{
myList.Add(myString);
}
}
sender.ItemsSource = myList;
}
This should work on WP 8.1
Based on this blog post, it looks like what you're expecting (automatic filtering) isn't the case - instead, you need to hook into the TextChanged
event and populate the Suggestions
collection yourself.
From the documentation:
The app is notified when text has been changed by the user and is responsible for providing relevant suggestions for this control to display.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With