private void PublishResponseMethodInvocation(XElement publishElement)
        {
            string childID = string.Empty;

            if (publishElement.Attribute(Common.IDAttrib) != null)
            {
                childID = publishElement.Attribute(Common.IDAttrib).Value;
            }

            if (FixedContext != null)
            {
                if (childID.StartsWith(FixedContext) && childID != FixedContext)
                {
                    childID = childID.Remove(0, FixedContext.Length + 1);
                }
            }

            if (Buttons.ContainsKey(childID))
            {
                IMethodCaller c = Buttons[childID];

                if (publishElement.Attribute(Common.State) != null)
                {
                    string state = publishElement.Attribute(Common.State).Value;

                    if (state == Common.PublishFieldDisabled)
                    {
                        c.SetDisabled(true);
                    }
                    else if (state == Common.PublishFieldHidden)
                    {
                        c.SetVisible(false);
                    }
                    else
                    {
                        c.SetVisible(true);
                        c.SetDisabled(false);
                    }
                }
            }
        }