EventTriggerBehavior点按不触发

蒂姆

我对地图上的图钉使用MVVM-light方法。我已将Tapped事件绑定到ViewModel中的命令。但是,不会触发该事件。所有其他命令和属性完美地绑定在一起。我也尝试过使用常规事件作为示例,但是它也没有触发。

我的VM中的命令

private RelayCommand<Check> _showDetailCheckCommand;
public RelayCommand<Check> ShowDetailCheckCommand
{
    get
    {
        Debug.WriteLine("Binded");
        return _showDetailCheckCommand ?? (_showDetailCheckCommand = new RelayCommand<Check>((c) =>
        {
            Debug.WriteLine("Action!");
        }));

    }
}

在我的XAML中

<Page
    x:Name="pageRoot" 
...


<Maps:MapControl x:Name="Map" IsEnabled="False" Margin="0,8,0,8" MapServiceToken="******" LandmarksVisible="False" PedestrianFeaturesVisible="False" TrafficFlowVisible="True"  ZoomLevel="16">
    <!-- Incidents -->
    <Maps:MapItemsControl ItemsSource="{Binding checks}">
        <Maps:MapItemsControl.ItemTemplate>
            <DataTemplate>
                <Image Tag="{Binding}" Source="{Binding image_path}" Maps:MapControl.Location="{Binding geodata, Converter={StaticResource RoadsmartCoordinatesToGeoPointConverter}}" Maps:MapControl.NormalizedAnchorPoint=".5,.5" >
                    <interactivity:Interaction.Behaviors>
                        <core:EventTriggerBehavior EventName="Tapped">
                            <core:InvokeCommandAction Command="{Binding DataContext.ShowDetailCheckCommand, ElementName=pageRoot}" CommandParameter="{Binding}"  />
                        </core:EventTriggerBehavior>
                    </interactivity:Interaction.Behaviors>
                </Image>
            </DataTemplate>
        </Maps:MapItemsControl.ItemTemplate>
    </Maps:MapItemsControl>
</Maps:MapControl>

我的输出日志确实说:'Binded',但是当我单击地图上的图像时,'Action'未执行。

蒂姆

我真笨 我将Map属性isEnabled设置为false

这很令人困惑,因为所有的Map手势都有效,但是绑定的XAML控件却没有。

愚蠢的错误,但它可能会帮助人们。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章