1

我正在使用 WPF 在 C# 的网格布局中放置一个图像。我想为它设置一个鼠标单击事件,但如果未设置图像源,则永远不会触发该事件。有没有办法改变它?无论是否设置了图像源,我都希望事件触发。

<Image Focusable="True" IsEnabled="True" Grid.Row="1" Grid.Column="0"
MouseLeftButtonDown="Image_MouseLeftButtonDown" MouseDown="Image_MouseDown" Stretch="Fill" />

除非设置了属性 Source,否则永远不会触发鼠标事件。

4

3 回答 3

1

将您Image放入 aGrid并在 Grid 上注册事件

<Grid Grid.Row="1" Background="White" Grid.Column="0" MouseLeftButtonDown="Image_MouseLeftButtonDown" MouseDown="Image_MouseDown">
  <Image Focusable="True" IsEnabled="True" Stretch="Fill" />
</Grid>
于 2013-03-20T13:53:28.417 回答
0
<Grid>
    <Image Height="150" HorizontalAlignment="Left" Margin="218,18,0,0" Name="image1" Stretch="Fill" VerticalAlignment="Top" Width="200" Source="/WpfApplication1;component/Images/2012-12-14-1535%20%281%29.jpg" MouseLeftButtonDown="image1_MouseLeftButtonDown" />
    <Rectangle Height="150" HorizontalAlignment="Left" Margin="218,18,0,0" Name="rectangle1" Stroke="Black" VerticalAlignment="Top" Width="200" />
 </Grid>
于 2013-03-20T14:35:58.640 回答
0
 <Grid>
 <Image Height="150" HorizontalAlignment="Left" Margin="218,18,0,0" Name="image1"   Stretch="Fill" VerticalAlignment="Top" Width="200" Source="path" MouseLeftButtonDown="image1_MouseLeftButtonDown" />
 </Grid>
于 2013-03-20T14:04:54.840 回答