有没有一种方法可以给图片分配一个点击事件?我想将事件分配给显示我的数据的列表框中的删除和搜索按钮。有没有办法使用图像控件来做到这一点,或者我必须在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>发布于 2011-01-26 12:55:30
您可以使用手势侦听器来检测轻拍(单击)事件。在这里走一走。
WP7 Tip of the Day: Silverlight Toolkit: Gestures
或者,您可以将图像放入Button控件中,然后在blend中重新刻印它,以获得所需的外观。
发布于 2011-01-26 21:29:59
据我所知,对于点击和手势事件,图像本身没有侦听器(它们必须通过前面提到的手势附加)。实现这一点的一种方法是重新设置按钮模板:
<Button>
<Button.Template>
<ControlTemplate>
<Image Source="Images/delete.png" Margin="10,0"/>
</ControlTemplate>
</Button.Template>
</Button>在按键上设置模板时,您将覆盖电话使用的默认模板(具有额外的填充、粗边等)。使用此方法将允许您绑定到按钮单击事件。
发布于 2011-01-26 13:07:48
处理ManipulationCompleted事件(这是任何轻敲,双击,轻扫,爱抚或轻抚)到您的图像(S)。所以:
<Image Source="Images/delete.png" Margin="10,0"/>变成了<Image x:Name="ImageDelete" ManipulationCompleted="ImageDelete_ManipulationCompleted" Source="Images/delete.png" Margin="10,0"/>。然后在ImageDelete_ManipulationCompleted处理程序中,跟踪它从sender传入的位置并执行您的操作。
如果你只想跟踪滑动而不是轻敲,只需在ManipulationCompletedEventArgs的e.IsInertial上执行一条If语句即可。
https://stackoverflow.com/questions/4801485
复制相似问题