如何处理c#wpf自定义控件中的事件

如何处理c#wpf自定义控件中的事件,c#,wpf,custom-controls,C#,Wpf,Custom Controls,我刚刚开始探索wpf中的自定义控件。我通常是一名vb.net开发人员。在vb.net中,右上角组合框中的代码文件中有一个事件列表。即使组合框在那里,事件在C#中也不在那里。我知道如何覆盖c#中的事件,但签名不同,这与处理事件不同。在C#的wpf自定义控件中处理事件的正确方法是什么?您可以在设计器的属性工具箱“事件”选项卡中看到公开事件的列表。或者,点击。在控件实例和intellisense中,查找具有闪电图标的成员。例如,使用名为tb的文本框(在自定义控件和开箱即用控件中处理事件之间没有区别…)

我刚刚开始探索wpf中的自定义控件。我通常是一名vb.net开发人员。在vb.net中,右上角组合框中的代码文件中有一个事件列表。即使组合框在那里,事件在C#中也不在那里。我知道如何覆盖c#中的事件,但签名不同,这与处理事件不同。在C#的wpf自定义控件中处理事件的正确方法是什么?

您可以在设计器的属性工具箱“事件”选项卡中看到公开事件的列表。或者,点击。在控件实例和intellisense中,查找具有闪电图标的成员。例如,使用名为tb的文本框(在自定义控件和开箱即用控件中处理事件之间没有区别…):

对于这样的处理程序:

void tb_KeyDown(object sender, KeyEventArgs e)
{
        MessageBox.Show(e.Key.ToString());
}
或:


谢谢你的回答。但是,我正在设计自定义控件。在设计控件时,我关心的是如何处理事件。自定义控件没有UI设计器,因为它们是无设计器控件。模板用于为它们提供视觉外观。我想处理代码文件中的事件。
void tb_KeyDown(object sender, KeyEventArgs e)
{
        MessageBox.Show(e.Key.ToString());
}
TextBox tb = new TextBox();            
this.Grid1.Children.Add(tb);
tb.KeyDown += (o, e) => MessageBox.Show(e.Key.ToString());