如何在Windows Phone 7控件中向现有事件处理程序添加功能

时间:2013-02-25 22:11:11

标签: .net windows-phone-7 event-handling windows-phone

我制作了一个自定义的Windows Phone 7控件,我称之为继承自Textbox的GhostBox。我想在控件获得焦点时自动从Ghostbox类中运行一个方法(名为Update)(即GotFocus)。

如何配合预先存在的事件(GotFocus)?我是否必须制作新的eventhandler / delegates?

目前,我必须为我创建的每个GhostBox访问GotFocus方法并手动调用Update方法。

3 个答案:

答案 0 :(得分:2)

您无需订阅任何活动。只需覆盖后代类中的void OnGotFocus(RoutedEventArgs e)方法:

protected override void OnGotFocus(RoutedEventArgs e)
{
    base.OnGotFocus(e);

    // do your stuff - call your Update method 
}

答案 1 :(得分:0)

创建方法和事件。

 protected virtual void GotFocus()
 {
      //Your code
 }  

  public delegate void GotFocusEventHandler(object sender, ValueChangedEventArgs e);
  public event ValueChangedEventHandler ValueChanged;

答案 2 :(得分:0)

您可以订阅GetFocus活动:

base.GetFocus += (s,e) => Update();