C# UWP在从GridView.ItemTemplate DataTemplate创建的对象上使用图像事件开始情节提要

C# UWP在从GridView.ItemTemplate DataTemplate创建的对象上使用图像事件开始情节提要,c#,xaml,uwp,storyboard,C#,Xaml,Uwp,Storyboard,我使用过微软的文档和类似的网站,也取得了一些成功,但我无法实现我的目标 我想要一个图像点击来启动故事板,图像点击来自gridview中对象的实例 <GridView ItemSource="{Binding"}> <GridView.ItemTemplate> <DataTempate> <Grid> <Grid.Resources> <Storyboard> <!-- storyboard code here no

我使用过微软的文档和类似的网站,也取得了一些成功,但我无法实现我的目标

我想要一个图像点击来启动故事板,图像点击来自gridview中对象的实例

<GridView ItemSource="{Binding"}>
<GridView.ItemTemplate>
<DataTempate>
<Grid>
<Grid.Resources>
<Storyboard>
<!-- storyboard code here no worries it works outside the data template-->
</Storyboard>
<Image Tapped="Image_Tapped" Source="assets/stuff/stuff.png">
</Image>

任何帮助想法都会很好,谢谢。

它不应该被点击=\uuu它应该是按钮点击的事件处理程序。使用按钮并用它环绕图像

<Button onClick="buttonClicked">
<Image/>
</Button>

它不应该被轻敲=\u它应该是按钮单击的事件处理程序。使用按钮并用它环绕图像

<Button onClick="buttonClicked">
<Image/>
</Button>

成功!我知道有一个简单的方法可以做到这一点

可以重新封顶吗

<GridView>
    <GridView.ItemTemplate>
        <DataTemplate>
            <Grid>
                <!--stuff like columns and rows etc etc-->
                <Image x:Name="MyImageToAnimate" source="assets/stuff/stuff.png"/>
                <!--other bits etc-->
                <Image x:Name="ImageThatUserTaps" source="assets/stuff/other_stuff.png">
                    <Image.Resources>
                        <Storyboard x:Name="MyStoryboard">
                            <!--write your storyboard here-->
                                <!--my storyboard targets the opacity of "MyImageToAnimate"-->
                        </Storyboard>
                    </Image.Resources>
                </Image>
            </Grid>
        </DataTemplate>
    </GridView.ItemTemplate>
</GridView>
这让我心烦意乱的时间太长了,像往常一样,有一个很好的简单的解决方案,只是看不见一点点


希望这能帮助别人。

成功!我知道有一个简单的方法可以做到这一点

可以重新封顶吗

<GridView>
    <GridView.ItemTemplate>
        <DataTemplate>
            <Grid>
                <!--stuff like columns and rows etc etc-->
                <Image x:Name="MyImageToAnimate" source="assets/stuff/stuff.png"/>
                <!--other bits etc-->
                <Image x:Name="ImageThatUserTaps" source="assets/stuff/other_stuff.png">
                    <Image.Resources>
                        <Storyboard x:Name="MyStoryboard">
                            <!--write your storyboard here-->
                                <!--my storyboard targets the opacity of "MyImageToAnimate"-->
                        </Storyboard>
                    </Image.Resources>
                </Image>
            </Grid>
        </DataTemplate>
    </GridView.ItemTemplate>
</GridView>
这让我心烦意乱的时间太长了,像往常一样,有一个很好的简单的解决方案,只是看不见一点点


希望这能帮助其他人。

你好,谢谢。我尝试了一些类似于你建议的方法,但失败了,因为UWP是有限的,当加载UIElement时会发生EventTrigger,我需要在单击或点击事件中使用它。当我点击图片时,其他代码会被触发,这只是故事板的问题。问题是,我不知道一个图片是否可以用简单的方式点击。我觉得这需要更多的时间。但是,您可以使用AppBarButton环绕图像而不是按钮,并删除图像。相反,使用外部资源图标将ABB的图标作为您的图像。嗯,我觉得您没有抓住问题的关键。我有一个从Image Tapped事件调用的代码。在UWP xaml中,有可能发生此抽头事件。我的问题是在点击图像时开始制作故事板。目前,图像点击事件导致一名玩家丧生,我可以通过查看该玩家类对象的实例看到这种情况。我需要的是访问或调用在数据模板中定义的故事板,该模板表示xamlOk中的player类对象,然后不使用事件触发器。相反,使用代码隐藏(c#,VisualBasic,what have you)并将图像点击事件处理程序路由到那里?仅供参考故事板。开始();不会在数据模板中工作。您好,谢谢。我尝试了一些类似于你建议的方法,但失败了,因为UWP是有限的,当加载UIElement时会发生EventTrigger,我需要在单击或点击事件中使用它。当我点击图片时,其他代码会被触发,这只是故事板的问题。问题是,我不知道一个图片是否可以用简单的方式点击。我觉得这需要更多的时间。但是,您可以使用AppBarButton环绕图像而不是按钮,并删除图像。相反,使用外部资源图标将ABB的图标作为您的图像。嗯,我觉得您没有抓住问题的关键。我有一个从Image Tapped事件调用的代码。在UWP xaml中,有可能发生此抽头事件。我的问题是在点击图像时开始制作故事板。目前,图像点击事件导致一名玩家丧生,我可以通过查看该玩家类对象的实例看到这种情况。我需要的是访问或调用在数据模板中定义的故事板,该模板表示xamlOk中的player类对象,然后不使用事件触发器。相反,使用代码隐藏(c#,VisualBasic,what have you)并将图像点击事件处理程序路由到那里?仅供参考故事板。开始();不会在数据模板中作为its工作。
private void ImageThatUserTaps_Tapped(object sender, TappedRoutedEventArgs e)
{
    Storyboard sb = (sender as Image).Resources["MyStoryboard"] as Storyboard;
    sb.Begin();
}