public class Test
	{
		[Test]
		public void TestMethod()
		{
			var x = new TestChild();

			x.TestAction += () => Debug.Log("Hello"); // This will register TestChild.TestAction

			x.RaiseFromChild(); // Hello
			x.RaiseFromParent(); // TestParent.TestAction ignored!
		}
	}

	public class TestParent
	{
		public virtual event Action TestAction; // Not registered!

		public void RaiseFromParent()
		{
			TestAction?.Invoke();
		}
	}

	public class TestChild : TestParent
	{
		public override event Action TestAction;

		public void RaiseFromChild()
		{
			TestAction?.Invoke();
		}
	}

참고

기본 클래스에서 가상 이벤트를 선언하지 말고 파생 클래스에서 재정의합니다. C# 컴파일러는 이러한 이벤트를 올바르게 처리하지 않으며, 파생 이벤트의 구독자가 실제로 기본 클래스 이벤트를 구독할지 여부를 예측할 수 없습니다.

파생 클래스에서 기본 클래스 이벤트를 발생하는 방법 - C# 프로그래밍 가이드 | Microsoft Docs