rendered paste body class WrappedEnterLeave : Control {
StringBuilder sb;
public WrappedEnterLeave (StringBuilder sb) {
this.sb = sb;
}
protected override void OnEnter (EventArgs e) {
IContainerControl c = GetContainerControl ();
//sb.Append(String.Format("before Control.OnEnter: {0}, active = {1}", Name, c.ActiveControl));
base.OnEnter (e);
sb.Append(String.Format("after Control.OnEnter: {0}, active = {1}", Name, c.ActiveControl));
}
protected override void OnLeave (EventArgs e) {
IContainerControl c = GetContainerControl ();
sb.Append(String.Format("before Control.OnLeave: {0}, active = {1}", Name, c.ActiveControl));
base.OnLeave(e);
sb.Append(String.Format("after Control.OnLeave: {0}, active = {1}", Name, c.ActiveControl));
}
}
[Test]
public void ActiveControl4 ()
{
sb = new StringBuilder ();
ContainerControl cc = new ContainerControl ();
Control c1 = new Control ();
WrappedEnterLeave c2 = new WrappedEnterLeave (sb);
cc.Controls.Add (c1);
cc.Controls.Add (c2);
connect (c1);
connect (c2);
c1.Select ();
c2.Select ();
Console.WriteLine ("<");
Console.WriteLine (sb.ToString ());
Console.WriteLine (">");
}