XAF_Bootstrap.Controls.XbActionContainerHolder.Callback_OnCallback C# (CSharp) Метод

Callback_OnCallback() публичный Метод

public Callback_OnCallback ( object source, CallbackEventArgs e ) : void
source object
e CallbackEventArgs
Результат void
        void Callback_OnCallback(object source, CallbackEventArgs e)
        {
            if (actionObjects.Count == 0)
                CreateMenuItems();

            var param = String.Concat(e.Parameter);
            var data = "";

            if (param.Length > 7 && param.Substring(0, 7) == "Action=")
            {
                param = param.Substring(7, param.Length - 7);
                if (param.IndexOf(",") > -1)
                {
                    data = param.Substring(param.IndexOf(",") + 1, param.Length - param.IndexOf(",") - 1);
                    param = param.Substring(0, param.IndexOf(","));
                }

                var items = actionObjects.Where(a => a.Key.Id == param);
                if (items.Count() > 0)
                {
                    ActionBase action = items.FirstOrDefault().Key;
                    if (action is SingleChoiceAction && data != "")
                    {
                        var singleChoice = (action as SingleChoiceAction);
                        singleChoice.SelectedItem = singleChoice.Items.Where(f => f.Id == data).FirstOrDefault();
                    }
                    if (action is ParametrizedAction)
                    {
                        var parametrizedAction = (action as ParametrizedAction);
                        parametrizedAction.DoExecute(data);
                    }
                    else
                        Helpers.ProcessAction(action);
                }

            }
            EnsureChildControls();
        }