private void ButtonRelativeLayout_Click(object sender, EventArgs e) { var clickedLayout = (RelativeLayout)sender; var clickedButton = buttonDictionary[clickedLayout.Id]; var args = new HierarchyButtonClickEventArgs(); clickedButton.OnClick(args); currentParent = args.NextCurrentHierarchyButton ?? currentParent; if (args.LayoutChanged) { BuildLayout(currentParent); } }
/// <summary> /// ボタンが押されたことを通知します。 /// </summary> /// <param name="e"></param> public abstract void OnClick(HierarchyButtonClickEventArgs e);
public override void OnClick(HierarchyButtonClickEventArgs e) { throw new InvalidOperationException(); }