我正在使用带有 ItemTemplateSelector 的可绑定堆栈布局。我的数据模板位于另一个文件中,该文件是作为 MergedResourceDictionay 包含在 MainView 中的 ResourceDictionary。在我的一个 DataTemplates 中,我有带有 TapGestureRecognizer 的标签,它应该在 MainViewViewModel 中触发命令,但我似乎无法开始工作......
我尝试Source={x:Reference MainPage}在我的命令绑定中使用它,但无法引用它,因为它不在同一个文件中
(Xamarin.Forms.Xaml.XamlParseException:“位置 28:51。找不到 MainPage 引用的对象”)
<--! this is snippet from MainPage -->
<ScrollView Orientation="Vertical" Grid.Row="1">
<local:BindableStackLayout BindableLayout.ItemsSource="{Binding Day.TodayEntry}"
x:Name="BindableStack" Spacing="10" Margin="10"
BindableLayout.ItemTemplateSelector="{StaticResource CardDetailTemplateSelector}"/>
</ScrollView>
<--! this is problematic snippet from data template -->
<Label Text="REMOVE" FontSize="Medium" TextColor="White" HorizontalOptions="End" Margin="3,0,0,0">
<Label.GestureRecognizers>
<TapGestureRecognizer Command="{Binding RemoveEntryCommand, Source={x:Reference MainPage}}"
CommandParameter="{Binding .}"/>
</Label.GestureRecognizers>
</Label>
慕侠2389804