public override bool TryGetMember(GetMemberBinder binder, out object result)
        {
            var nodeList = Node.SelectNodes(binder.Name);

            if (nodeList != null && nodeList.Count > 0)
            {
                result = new DynamicXmlNodeList(nodeList);
                return(true);
            }

            return(base.TryGetMember(binder, out result));
        }
        public override bool TryInvoke(InvokeBinder binder, object[] args, out object result)
        {
            if ((args.Length == 1) && (args[0] is string))
            {
                var nodeList = Node.SelectNodes((string)args[0]);

                if (nodeList != null && nodeList.Count > 0)
                {
                    result = new DynamicXmlNodeList(nodeList);
                    return(true);
                }
            }
            return(base.TryInvoke(binder, args, out result));
        }