Проблема, с которой вы столкнулись, связана с Binding Context.Например, обычно в вашем View ваш BindingContext - это ваша ViewModel.При работе с DataTemplate внутри чего-то вроде ListView ваш BindingContext вместо этого будет использовать любую модель данных, которую вы можете передавать этому ListView в качестве ItemsSource.Хитрость заключается в том, чтобы иметь возможность ссылаться на исходную ViewModel.
<syncfusion:SfListView.ItemTemplate x:Name="lv">
<DataTemplate>
<Button Text="Some Button"
Command="{Binding BindingContext.MyCommand,Source={x:Reference lv}}" />
</DataTemplate>
</syncfusion:SfListView.ItemTemplate>
Как мы это делаем, довольно просто, сначала нужно указать имя элемента, который имеет нашу ViewModel в качестве Binding Context.Вы можете выбрать все, что вам действительно нравится, я обычно просто ссылаюсь на родительскую страницу, но фактическое представление списка также будет работать нормально.Далее нам нужно добавить этот именованный элемент в качестве источника привязки.Наконец, нам нужно осознать, что наш новый Binding Context - это элемент, который мы добавили в качестве источника, поэтому мы должны добавить к нашему Binding свойство BindingContext, чтобы иметь правильную область видимости в нашей ViewModel.