DEV Community

Darwing  Castellanos
Darwing Castellanos

Posted on

Capturar dato seleccionado desde un CarouselView en Xamarin Forms con MVVM

Usamos un evento Command

<StackLayout.GestureRecognizers>
<TapGestureRecognizer Command="{Binding
Path=BindingContext.CategoriaCommand,Source={x:Reference currentPage}}"
CommandParameter="{Binding .}"/>
</StackLayout.GestureRecognizers>
Enter fullscreen mode Exit fullscreen mode

Le asignamos un ID al CarouselView

x:Name="currentPage"
Enter fullscreen mode Exit fullscreen mode

Dentro del constructor del MVVM obtenemos el objeto

CategoriaCommand=new Command(async (selectItem) => await CategoriaSelecionada(selectItem));
Enter fullscreen mode Exit fullscreen mode

Creamos un medoto asincrono, yo lo he llamado “CategoriaSeleccionada” para pasarle el parametro de tipo Object y luego hacemos la conversion al modelo de datos que queramos

public async Task CategoriaSelecionada(Object data)
{       
 _Categoria = (Categoria)data;
        if (_Categoria != null)
        {
            Categoria = _Categoria;
            IdCategoria =  _Categoria.idCategoria;
            await ListaProductos();
        }
    }

Enter fullscreen mode Exit fullscreen mode

Top comments (0)