public override XmlNode GetShowingNode()
        {
            if (currentGrid.SelectedGridItem != null && currentGrid.SelectedGridItem.PropertyDescriptor != null)
            {
                CustomXmlPropertyDescriptorBase desc = currentGrid.SelectedGridItem.PropertyDescriptor as CustomXmlPropertyDescriptorBase;
                if (desc.XmlElement is XmlAttribute)
                {
                    return(desc.XmlElement);
                }
                else if (desc.XmlElement.Attributes[currentGrid.SelectedGridItem.Label] != null)
                {
                    return(desc.XmlElement.Attributes[currentGrid.SelectedGridItem.Label]);
                }
                else
                {
                    return(desc.XmlElement);
                }
            }
            else if (currTreeView.SelectedNode != null)
            {
                return((XmlNode)currTreeView.SelectedNode.Tag);
            }

            return(null);
        }
示例#2
0
        protected XmlNode GetSelectedProperty()
        {
            // Get the XmlAttribute from the PropertyDescriptor
            XmlNode element = null;

            if (elementPropertyGrid.SelectedGridItem.PropertyDescriptor is XmlAttributePropertyDescriptor)
            {
                XmlAttributePropertyDescriptor desc = elementPropertyGrid.SelectedGridItem.PropertyDescriptor as XmlAttributePropertyDescriptor;
                element = desc.Attribute;
            }
            else if (elementPropertyGrid.SelectedGridItem.PropertyDescriptor is CustomXmlPropertyDescriptorBase)
            {
                CustomXmlPropertyDescriptorBase desc = elementPropertyGrid.SelectedGridItem.PropertyDescriptor as CustomXmlPropertyDescriptorBase;
                element = desc.XmlElement;
            }
            else
            {
                string typeString = "null";
                if (elementPropertyGrid.SelectedGridItem.PropertyDescriptor != null)
                {
                    typeString = elementPropertyGrid.SelectedGridItem.PropertyDescriptor.GetType().ToString();
                }

                throw new Exception(String.Format("Expected XmlAttributePropertyDescriptor, but got {0} in GetSelectedProperty", typeString));
            }

            return(element);
        }
示例#3
0
        protected virtual XmlNode GetSelectedGridObject()
        {
            CustomXmlPropertyDescriptorBase desc = CurrentGrid.SelectedGridItem.PropertyDescriptor as CustomXmlPropertyDescriptorBase;

            return(desc.XmlElement);
        }