我在我的窗口中放置了一个自定义的UserControl,并在我的usesr-control中设置了MouseDoubleClick事件来改变它的一些属性。我的UserControl中的事件不会启动 - 为什么?
但是,使用断点,我意识到MouseDoubleClick事件永远不会被触发。对于我在用户控制中设置的任何事件都是如此。
我错过了什么?
BTW:我也创造了一些的DependencyProperty,“经书”,效果很好,如果它可以帮助...
我在我的窗口中放置了一个自定义的UserControl,并在我的usesr-control中设置了MouseDoubleClick事件来改变它的一些属性。我的UserControl中的事件不会启动 - 为什么?
但是,使用断点,我意识到MouseDoubleClick事件永远不会被触发。对于我在用户控制中设置的任何事件都是如此。
我错过了什么?
BTW:我也创造了一些的DependencyProperty,“经书”,效果很好,如果它可以帮助...
这里是如何在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
是显示和整个窗口应该是红色。在窗口上双击,你会看到一个消息框:
一旦这一切工作,你可以用你需要使用的双击事件无论对方球门继续。
为您设置背景User Control
。它可能是Transparent
或White
。
如果你做得对,它应该可以工作。但如果你没有向我们展示你实际使用的代码,我们不可能知道你是否做过。 _请发布您的代码。 – 2011-05-20 23:23:55
代码或它没有发生 – flq 2011-05-20 23:24:09
也许你没有双击你的控制? ;) – surfen 2011-05-20 23:57:47