WP7 - 图像点击事件?

web*_*ad3 8 silverlight windows-phone-7

有没有办法为图像分配点击事件?我想将事件分配给我的列表框中显示我的数据的删除和搜索按钮.有没有办法使用图像控件执行此操作,还是我必须在BLEND中为按钮创建样式?

        <ListBox x:Name="lbPills" ItemsSource="{Binding pillItemsCollection}" SelectionChanged="lbPills_SelectionChanged">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel x:Name="DataTemplateStackPanel" Orientation="Horizontal">
                        <TextBlock FontFamily="Segoe WP Semibold" FontWeight="Bold" FontSize="30" VerticalAlignment="Top" Margin="20,0">*</TextBlock>
                        <StackPanel>
                            <TextBlock x:Name="ItemText" Text="{Binding Name}" Margin="-2,-13,0,0" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
                        </StackPanel>

                        <Image Source="Images/delete.png" Margin="10,0"/>
                        <Image Source="Images/search.png" Margin="10,0"/>
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>
Run Code Online (Sandbox Code Playgroud)

ava*_*nek 13

据我所知,图像本身没有用于点击和手势事件的监听器(它们必须通过如前所述的手势附加).解决此问题的一种方法是重新模板按钮:

        <Button>
            <Button.Template>
                <ControlTemplate>
                    <Image Source="Images/delete.png" Margin="10,0"/>
                </ControlTemplate>
            </Button.Template>
        </Button>
Run Code Online (Sandbox Code Playgroud)

在按钮上设置模板时,您将覆盖手机使用的默认模板(具有额外的填充,粗边框等).使用此方法将允许您绑定按钮单击事件.

  • 我也喜欢这个答案. (2认同)

Mic*_*k N 9

您可以使用手势监听器来检测点按(单击)事件.这是一个演练.

WP7每日提示:Silverlight工具包:手势

或者,您可以将图像放入Button控件并在混合中重新模板化以获得所需的外观.