/// <summary> /// /// </summary> public virtual void CreateActionPanels() { var actions = new List <ActionMetaItem>(); if (BusinessObject != null) { //получаем действия из объекта var meta = (IObjectMeta)BusinessObject.GetAccessor(); meta.Actions.ForEach(a => actions.Add(new ActionMetaItem(a))); } //определяем, есть ли дополнительные действия, определённые в самой BasePanel if (ParentBasePanel != null) { //собираем действия, которые требуется добавить к базовым ParentBasePanel.SetCustomActions(actions); foreach (var act in ParentBasePanel.CustomActions) { if (actions.All(a => a.Name != act.Name)) { actions.Add(act); } } } //добавляем действия AddActions(actions); }