private void UpdateFocusManager() { if (mgrFocus == null) { //please, never do that! mgrFocus = new FocusManagerExt(); mgrFocus.UpdateServiceReferences(this); BindingFlags bf = BindingFlags.Default; bf |= BindingFlags.NonPublic; bf |= BindingFlags.Instance; FieldInfo fi = typeof(Diagram).GetField("m_mgrFocus", bf); fi.SetValue(this, mgrFocus); } }