Xamarin事件命令开关已切换

Xamarin事件命令开关已切换,xamarin,switch-statement,behavior,eventtocommand,Xamarin,Switch Statement,Behavior,Eventtocommand,您好,我正在尝试使用EventToCommand,我使用了prism库,但遇到了如下所述的小问题 MyTestSwitch_1可以正常工作,执行ToggledCommand,但当我尝试单击基于ListView项生成的MyTestSwitch_ListView时,它不会执行任何操作,不会给出任何异常应用程序不会崩溃,它只会忽略EventToCommand行为 有人知道会出什么问题吗。多谢各位 <StackLayout> <Switch x:Name="MyTestSwit

您好,我正在尝试使用EventToCommand,我使用了prism库,但遇到了如下所述的小问题

MyTestSwitch_1可以正常工作,执行ToggledCommand,但当我尝试单击基于ListView项生成的MyTestSwitch_ListView时,它不会执行任何操作,不会给出任何异常应用程序不会崩溃,它只会忽略EventToCommand行为

有人知道会出什么问题吗。多谢各位

<StackLayout>
    <Switch x:Name="MyTestSwitch_1" IsToggled="{Binding ValueB}}">
        <Switch.Behaviors >
            <b:EventToCommandBehavior EventName="Toggled" 
                                      Command="{Binding ToggledCommand}"/>
    </Switch.Behaviors>
</Switch>

<ListView x:Name="MyListView"
        ItemsSource="{Binding ValuesList}"
        ItemTapped="Handle_ItemTapped"
        CachingStrategy="RecycleElement"

          HasUnevenRows="True"

        IsPullToRefreshEnabled="True"            
        RefreshCommand="{Binding RefreshCommand}"
        IsRefreshing="{Binding IsRefreshing, Mode=OneWay}"
          Margin="10">
    <ListView.Behaviors>
        <b:EventToCommandBehavior EventName="ItemTapped" 
                                  Command="{Binding ItemTappedCommand}"
                                  CommandParameter="MyParameter" />
    </ListView.Behaviors>

    <ListView.ItemTemplate>
        <DataTemplate>
            <ViewCell>
                <StackLayout>
                    <Label Text="{Binding Id}" 
               Style="{DynamicResource ListItemTextStyle}" />
                    <Label Text="{Binding Value}" 
               Style="{DynamicResource ListItemDetailTextStyle}"/>
                    <Switch x:Name="MyTestSwitch_ListView" IsToggled="{Binding ValueB}}">
                        <Switch.Behaviors >
                            <b:EventToCommandBehavior EventName="Toggled" 
                                  Command="{Binding  ToggledCommand}, Source={x:Reference ThisPage}"
                                  CommandParameter="{Binding .}" />
                        </Switch.Behaviors>
                    </Switch>
                </StackLayout>
            </ViewCell>
        </DataTemplate>
    </ListView.ItemTemplate>

</ListView>


您好,我终于在这个线程中找到了解决方案


感谢NMackay

我刚刚发现,当我将其添加到itemtemplate时,它甚至没有按钮,它只是忽略了单击事件或切换事件…欢迎提供指向解决方案的链接,但请确保您的答案在没有它的情况下是有用的:这样您的其他用户就会知道它是什么,以及它为什么存在,然后引用你链接到的页面最相关的部分,以防目标页面不可用。