コード例 #1
0
ファイル: ReplyView.xaml.cs プロジェクト: llenroc/AwfulMetro
        private void FilterBox_OnQueryChanged(SearchBox sender, SearchBoxQueryChangedEventArgs args)
        {
            if (_vm.SmilieCategoryList == null)
            {
                return;
            }
            string queryText = args.QueryText;

            if (string.IsNullOrEmpty(queryText))
            {
                _vm.SmilieCategoryList = _vm.FullSmileCategoryEntities;
                return;
            }
            var result = _vm.SmilieCategoryList.SelectMany(
                smileCategory => smileCategory.List.Where(smile => smile.Title.Equals(queryText))).FirstOrDefault();

            if (result != null)
            {
                return;
            }
            var searchList = _vm.FullSmileCategoryEntities.SelectMany(
                smileCategory => smileCategory.List.Where(smile => smile.Title.Contains(queryText)));
            List <SmileEntity> smileListEntities = searchList.ToList();
            var searchSmileCategory   = new SmileCategoryEntity("Search", smileListEntities);
            var fakeSmileCategoryList = new List <SmileCategoryEntity> {
                searchSmileCategory
            };

            _vm.SmilieCategoryList = fakeSmileCategoryList;
        }
コード例 #2
0
        public override void Execute(object parameter)
        {
            var args = parameter as SearchBoxQueryChangedEventArgs;

            if (args == null)
            {
                return;
            }
            var    vm        = Locator.ViewModels.SmiliesPageVm;
            string queryText = args.QueryText;

            if (string.IsNullOrEmpty(queryText))
            {
                vm.SmileCategoryList = vm.FullSmileCategoryEntities;
                return;
            }
            var result = vm.SmileCategoryList.SelectMany(
                smileCategory => smileCategory.SmileList.Where(smile => smile.Title.Equals(queryText))).FirstOrDefault();

            if (result != null)
            {
                return;
            }
            var searchList = vm.FullSmileCategoryEntities.SelectMany(
                smileCategory => smileCategory.SmileList.Where(smile => smile.Title.Contains(queryText)));
            List <SmileEntity> smileListEntities = searchList.ToList();
            var searchSmileCategory = new SmileCategoryEntity()
            {
                Name      = "Search",
                SmileList = smileListEntities
            };
            var fakeSmileCategoryList = new List <SmileCategoryEntity> {
                searchSmileCategory
            };

            vm.SmileCategoryList = fakeSmileCategoryList.ToObservableCollection();
        }
コード例 #3
0
 public override void Execute(object parameter)
 {
     var args = parameter as SearchBoxQueryChangedEventArgs;
     if (args == null)
     {
         return;
     }
     var vm = Locator.ViewModels.SmiliesPageVm;
     string queryText = args.QueryText;
     if (string.IsNullOrEmpty(queryText))
     {
         vm.SmileCategoryList = vm.FullSmileCategoryEntities;
         return;
     }
     var result = vm.SmileCategoryList.SelectMany(
         smileCategory => smileCategory.SmileList.Where(smile => smile.Title.Equals(queryText))).FirstOrDefault();
     if (result != null) return;
     var searchList = vm.FullSmileCategoryEntities.SelectMany(
         smileCategory => smileCategory.SmileList.Where(smile => smile.Title.Contains(queryText)));
     List<SmileEntity> smileListEntities = searchList.ToList();
     var searchSmileCategory = new SmileCategoryEntity()
     {
         Name = "Search",
         SmileList = smileListEntities
     };
     var fakeSmileCategoryList = new List<SmileCategoryEntity> { searchSmileCategory };
     vm.SmileCategoryList = fakeSmileCategoryList.ToObservableCollection();
 }