private void RecursiveUnmapCallbacks(IupHandle Handle) { if (Handle == null) { return; } IupHandle ih = Handle; int ch = ih.GetChildCount(); for (int ci = 0; ci < ch; ci++) { RecursiveUnmapCallbacks(ih.GetChild(ci)); } if (CallbackMap.ContainsKey(Handle.Handle)) { CallbackMap.Remove(Handle.Handle); } }