Handling Parent-Child Relationship using MVP within a WinForms Application
I'm no expert in design patterns, but I fail to see the benefit in having a completely empty interface. 


public interface IParentView { }



Interfaces do two things for us. 


They enforce a contract. Anything implementing this interface must have this specific public api. Which allows for...
The ability to code against an expected api, not an implementation. 


While you've done a good job of coding against IParentView instead of IChildView, what does the parent view get us? Nothing as far as I can tell. There's no real contract being made here, so there's no reason you couldn't have coded directly against IChildView. (Which, at that point, would not be a good name.)

But don't take just my word for it, 24 people on stack overflow agree that this pattern is a code smell.