Quantcast
Channel: Xamarin.Forms — Xamarin Community Forums
Viewing all articles
Browse latest Browse all 91519

Use XAML element as a parameter for a Command

$
0
0

Hi,

I defined a Picker in my View. Works good, but it's not really user-friendly, because there's no possibility to define a down arrow in the Picker parameters. So I did something like this to display one :

<Grid HeightRequest="50">
    <Picker x:Name="mySlugPicker" Grid.ColumnSpan="4"  Title="Sélectionnez votre serveur" ItemsSource="{Binding ServerList}"  ItemDisplayBinding="{Binding Value}" SelectedItem="{Binding SelectedItem}" TextColor="Black" TitleColor="Black" BackgroundColor="White"/>
    <Image Grid.Column="4" Source="down_arrow.png">
        <Image.GestureRecognizers>
            <TapGestureRecognizer NumberOfTapsRequired="1" Command="{Binding OpenPicker}" CommandParameter="{Binding mySlugPicker}"/>
        </Image.GestureRecognizers>
    </Image>
</Grid>

I defined the property "x:Name" to my Picker and set it as a CommandParameter for my command.

And in my ViewModel, I have something like this to interact with my Picker :

public Command<Picker> OpenPicker { get; }

public ViewModel()
{
    OpenPicker = new Command<Picker>(TriggerPickerOpening);
}

private void TriggerPickerOpening(Picker picker)
{
    picker.Focus();
}

But when I'm launching my app, I have a NullReferenceException.

What an I doing wrong?


Viewing all articles
Browse latest Browse all 91519

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>