我正试图在代码中为TapGestureRecognizer
设置绑定,但我无法弄清如何正确进行。有效的xaml看起来像这样...
<Grid>
<Grid.GestureRecognizers>
<TapGestureRecognizer Command="{Binding LaunchLocationDetailsCommand}"
CommandParameter="{Binding}" />
</Grid.GestureRecognizers>
</Grid>
在C#中,它看起来像这样...
var gridTap = new TapGestureRecognizer();
gridTap.SetBinding(TapGestureRecognizer.CommandProperty,
new Binding("LaunchLocationDetailsCommand"));
gridTap.SetBinding(TapGestureRecognizer.CommandParameterProperty,
new Binding(/* here's where I'm confused */));
var grid = new Grid();
grid.GestureRecognizers.Add(gridTap);
我的疑惑在于CommandParameterProperty
的绑定。在xaml中,它只需使用{Binding}
而不需要其他参数。那么在代码中怎么做呢?传递new Binding()
或者this.BindingContext
似乎行不通。