温馨提示: 这篇文章于1548天前编写,现在可能不再适用或落后.

wpf的监听事件里面不是所有控件都有click事件的,通常一个点击事件是点击按下到松开整个过程称为点击。

简单来说,实现一个点击事件只需要mousedown和mouseup这2个事件

<Image Width="100" Height="100" Source="Image/1.jpg" MouseDown="Image_MouseDown" MouseUp="Image_MouseUp"></Image>

创建一个变量用于判断是否是一个控件

private Image clickImage = null;

写上mousedown和mouseup的事件

private void Image_MouseDown(object sender, MouseButtonEventArgs e) {      clickImage = (Image)sender;      e.Handled = true;}private void Image_MouseUp(object sender, MouseButtonEventArgs e) {     if (clickImage != null && clickImage.Equals((Image)sender)) {          MessageBox.Show("触发Click");                }      clickImage = null;}

这样就实现了一个点击事件。

原理:鼠标按下将按下的控件赋值给clickImage

然后取消mousedown事件(不然松开的时候不会触发mouseup)

之后mouseup触发,判断clickImage是否为空(也就是刚才是否按下过图片控件)

并且判断按下的和松开的是否是同一个控件

如果是则代表触发Click事件

最后,clickImage赋值null


    阁下需要登录后才可以查看评论哦~

    随便看看

      载入中...

      正在准备穿越次元,阁下请稍等片刻~