Beispiel #1
0
        public override void TextChanged(object sender, TextChangedEventArgs ea)
        {
            if (Items == null || ItemsView == null)
            {
                return;
            }

            var filterbase = _selected ? BaseItems : Text != null && Text.Any() ? _allItems : _level0Items;

            var filtered = new MenuItemFilter(filterbase, Text);

            if (filtered.IsEmptyAndSinglePart)
            {
                ea.Handled = true;
                if (Text != null && Text.Any())
                {
                    Text = Text.Substring(0, Text.Length - 1);
                    SetCaret(Text.Length);
                }

                return;
            }

            Items = filtered;
            FocusInput();
        }
        public MenuItem Map(MenuItemFilter filter, MenuItem menuItem, CreateOrEditViewModel createOrEdit)
        {
            if (menuItem.Id == 0)
            {
                menuItem.MenuId     = filter.Menu?.Id;
                menuItem.MenuItemId = filter.MenuItem?.Id;
            }

            menuItem.Url      = createOrEdit.Url;
            menuItem.Position = createOrEdit.Position;
            return(menuItem);
        }