How can one create a user control that has the same functionality (along with some extended features) of OpenFileDialog in C#? I've followed [this](https://stackoverflow.com/questions/1769792/changing-button-text-in-openfiledialog-in-c-net), but I could not find a solution for my problem. 

My requirement is to add an extra button in the dialog. If that button gets clicked then the parent should be notified in the same manner as the `ok` and `cancel` buttons do.