将Tapped Command事件添加到gridview中的图像

时间:2016-05-19 11:56:42

标签: c# xaml events gridview command

我尝试了一切,但是我无法在gridview中对我的图像发出命令..我忘记了什么吗?

正如你所看到的那样,它是一个可以显示几幅图像的网格视图,但是如果你点击其中的一个图像,你可以转到一个可以缩放图像的细节屏幕。

XAML代码:

 <GridView ItemsSource="{Binding SelectedActivity.ObjectAttachments}"
                              Margin="10,0,0,0"
                              IsHitTestVisible="False"
                              Grid.Row="1"
                              Height="200">
                        <GridView.ItemsPanel>
                            <ItemsPanelTemplate>
                                <VirtualizingStackPanel Orientation="Horizontal" />
                            </ItemsPanelTemplate>
                        </GridView.ItemsPanel>
                        <GridView.ItemTemplate>
                            <DataTemplate>
                                <Image Source="{Binding AttachmentImageSource}"
                                       Width="150"
                                       Height="150"
                                       Stretch="UniformToFill"
                                       Margin="0,10,10,0">
                                </Image>
                            </DataTemplate>
                        </GridView.ItemTemplate>
                        <i:Interaction.Behaviors>
                            <core:EventTriggerBehavior EventName="Tapped">
                                <core:InvokeCommandAction Command="{Binding TappedCommand}" />
                            </core:EventTriggerBehavior>
                        </i:Interaction.Behaviors>
                    </GridView>

C#代码背后:

 public RelayCommand TappedCommand
    {
        get
        {
            return new RelayCommand( () =>
           {
               MessageDialog msgbox = new MessageDialog("Message Box is displayed");

                msgbox.ShowAsync();
                //do stuff when it works
           });
        }
    }

1 个答案:

答案 0 :(得分:1)

设置IsHitTestVisible =“True”。 False禁用该控件上的用户交互。