How to show a custom UnityEvent in custom class to custom Editor

code like this

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
using UnityEditor;

public class ExampleScript : MonoBehaviour {
    public class abc
        public UnityEvent testEvent;
        public bool invoked;
    public abc[] custom_class_array;

namespace UnityStandardAssets.Utility.Inspector
    public class ExampleSciptEditor : Editor
        public override void OnInspectorGUI()
            ExampleScript myscript = (ExampleScript)target;
            for (int i = 0; i < myscript.custom_class_array.Length; i++)
                SerializedProperty p = serializedObject.FindProperty("testEvent").GetArrayElementAtIndex(i);
                EditorGUILayout.PropertyField(p, true);

And return null , that mean unity can’t find it?
I find lot of method that only call from Behavior Script .

did you find an answer to this?