我制作了一个自定义的 windows phone 7 控件,我称之为从 Textbox 继承的 GhostBox。当控件获得焦点(即 GotFocus)时,我想从 Ghostbox 类内部自动运行一个方法(名为 Update)。
我怎样才能与那个预先存在的事件(GotFocus)联系起来?我必须创建一个新的事件处理程序/代表吗?
目前,我必须为我创建的每个 GhostBox 访问 GotFocus 方法并手动调用 Update 方法。
我制作了一个自定义的 windows phone 7 控件,我称之为从 Textbox 继承的 GhostBox。当控件获得焦点(即 GotFocus)时,我想从 Ghostbox 类内部自动运行一个方法(名为 Update)。
我怎样才能与那个预先存在的事件(GotFocus)联系起来?我必须创建一个新的事件处理程序/代表吗?
目前,我必须为我创建的每个 GhostBox 访问 GotFocus 方法并手动调用 Update 方法。
您无需订阅任何事件。只需覆盖后代类中的 void OnGotFocus(RoutedEventArgs e) 方法:
protected override void OnGotFocus(RoutedEventArgs e)
{
base.OnGotFocus(e);
// do your stuff - call your Update method
}
创建方法和事件。
protected virtual void GotFocus()
{
//Your code
}
public delegate void GotFocusEventHandler(object sender, ValueChangedEventArgs e);
public event ValueChangedEventHandler ValueChanged;
您可以订阅GetFocus
事件:
base.GetFocus += (s,e) => Update();