2011-05-20 38 views
2

我在我的窗口中放置了一个自定义的UserControl,并在我的usesr-control中设置了MouseDoubleClick事件来改变它的一些属性。我的UserControl中的事件不会启动 - 为什么?

但是,使用断点,我意识到MouseDoubleClick事件永远不会被触发。对于我在用户控制中设置的任何事件都是如此。

我错过了什么?

BTW:我也创造了一些的DependencyProperty,“经书”,效果很好,如果它可以帮助...

+3

如果你做得对,它应该可以工作。但如果你没有向我们展示你实际使用的代码,我们不可能知道你是否做过。 _请发布您的代码。 – 2011-05-20 23:23:55

+1

代码或它没有发生 – flq 2011-05-20 23:24:09

+0

也许你没有双击你的控制? ;) – surfen 2011-05-20 23:57:47

回答

1

这里是如何在UserControl处理MouseDoubleClick

创建一个名为UserControl1的新用户控件。这里是UserControl.xaml身体:

<Grid Background="Red"> 
    <!-- leave this blank at first --> 
</Grid> 

我们将背景设置为红色,所以我们可以看到,我们与用户的控制工作。此外,它需要一个背景才能接收点击事件。

在后台代码添加双击方法重写为用户控件在UserControl1.xaml.cs

protected override void OnMouseDoubleClick(MouseButtonEventArgs e) 
{ 
    base.OnMouseDoubleClick(e); 
    MessageBox.Show("Double-Click!"); 
} 

现在创建一个窗口,用户控件添加到它,例如Window1.xaml

<Grid> 
    <local:UserControl1/> 
</Grid> 

运行您的程序,以便Window1是显示和整个窗口应该是红色。在窗口上双击,你会看到一个消息框:

enter image description here

一旦这一切工作,你可以用你需要使用的双击事件无论对方球门继续。

0

为您设置背景User Control。它可能是TransparentWhite

相关问题