private void AutoSuggestBox_TextChanged()

in SampleGallery/SampleGalleryNavViewHost.xaml.cs [149:168]


        private void AutoSuggestBox_TextChanged(AutoSuggestBox sender, AutoSuggestBoxTextChangedEventArgs args)
        {
            if (args.Reason == AutoSuggestionBoxTextChangeReason.UserInput)
            {
                var matches = from sampleDef in SampleDefinitions.Definitions
                              where sampleDef.DisplayName.IndexOf(sender.Text, StringComparison.CurrentCultureIgnoreCase) >= 0
                                 || (sampleDef.Tags != null && sampleDef.Tags.Any(str => str.IndexOf(sender.Text, StringComparison.CurrentCultureIgnoreCase) >= 0))
                              select sampleDef;

                if (matches.Count() > 0)
                {
                    SearchBox.ItemsSource = matches.OrderByDescending(i => i.DisplayName.StartsWith(sender.Text, StringComparison.CurrentCultureIgnoreCase)).ThenBy(i => i.DisplayName);
                }
                else
                {
                    _dummySampleDefinition = new SampleDefinition("No results found", null, SampleType.Reference, SampleCategory.APIReference, false, false);
                    SearchBox.ItemsSource = new SampleDefinition[] { _dummySampleDefinition };
                }
            }
        }