方法の1つとして、ボタンのイベントをコントロールのイベントとして公開する方法があります。
public MyControl : Control
{
private Button button1;
// :
// button1 の Click イベントを ButtonClick というイベントとして公開
public event EventHandler ButtonClick
{
add { this.button1.Click += value; }
remove { this.button1.Click -= value; }
}
}