Биндинг к команде VM из шаблона элемента CollectionView (Xamarin)

В проекте есть шаблон CollectionView, в нем описан DataTemplate элемента. Этот шаблон используется в нескольких View. Как забиндить для кнопки внутри DataTemplate команду, которая находится в нынешнем BindingContext для View, в котором CollectionView выводится?

Конкретно: в ResourceDictionary есть шаблон (ненужный контекст вырезал):

<Style TargetType="CollectionView" x:Key="FirstCollectionStyle">
                <Setter Property="ItemTemplate">
                    <DataTemplate>
                        <Grid x:DataType="models:Song">
                            <ImageButton Command="{TemplateBinding BindingContext.PlayPushedCommand }" CommandParameter="{Binding .}"/>
                        ...
                        </Grid>
                    </DataTemplate>
                </Setter>
            </Style>

В ViewModel:

public Command<Song> PlayPushedCommand { get => new Command<Song>(async (song) => await PlayPushed(song)); }
...
        private Task<bool> PlayPushed(Song song)
        {
            ...
        }

Кроме конкретно этой вьюмодели есть и другие с такими же командами внутри. Вопрос в том, как мне обратиться из Command ImageButton к команде именно модели, которая является на данный момент контекстом. Ведь через TemplateBinding я получу доступ к контексту коллекции, к которой принадлежит этот элемент.


Ответы (0 шт):