我有一个UserControl
,其中使用了Canvas
,并在该Canvas 中使用了一个矩形。我想为该用户控件( Canvas 和矩形)创建一个单击事件,然后我想在主窗口中使用该事件。
问题是:我想为 UserControl
创建一个新的点击事件。怎么做?请展示一些示例或代码。
最佳答案
关于如何从主窗口可以注册的 UserControl 公开事件的简短示例:
在您的用户控件中:
1.添加以下声明:
public event EventHandler UserControlClicked;
2.在您的 UserControl_Clicked 事件中 raise the event 像这样:
private void UserControl_MouseDown(object sender, MouseButtonEventArgs e)
{
if (UserControlClicked != null)
{
UserControlClicked(this, EventArgs.Empty);
}
}
在主窗口中:
您的用户控件现在将有一个 UserControlClicked
事件,您可以注册该事件:
<local:UserControl1 x:Name="UC" UserControlClicked="UC_OnUserControlClicked" />
关于wpf - 如何在 WPF 中为用户控件创建用户定义(新)事件?一个小示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13447940/