private async void ExecuteSearchPublicGroupAsync(string expression)
        {
            if (expression?.Length == 1 && CachedList.Count == 0)
            {
                CachedList = new ObservableCollection <GrupoOferta>(GruposOfertasUsuario);
            }
            GruposOfertasUsuario.Clear();

            if (string.IsNullOrEmpty(expression))
            {
                foreach (var item in CachedList)
                {
                    GruposOfertasUsuario.Add(item);
                }
                CachedList.Clear();
                return;
            }

            var result = await grupoOfertaService.LocalizarGruposOfertaPublicosAsync(expression);

            foreach (var item in result)
            {
                GruposOfertasUsuario.Add(item);
            }
        }
        protected async override void Init(Dictionary <string, string> parameters = null)
        {
            GruposOfertasUsuario.Clear();
            var grupos = await grupoOfertaService.CarregarGrupoDeOfertasUsuarioLogadoAsync();

            foreach (var grupo in grupos)
            {
                GruposOfertasUsuario.Add(grupo);
            }
            var newGroups = await grupoOfertaService.CarregarGrupoDeOfertasUsuarioLogadoSync(grupos.Select(x => x.Id));

            if (newGroups != null)
            {
                foreach (var grupo in grupos)
                {
                    GruposOfertasUsuario.Add(grupo);
                }
            }
        }