public override bool MoveToNextAttribute() {
XmlAttribute attribute = source as XmlAttribute;
if (attribute == null
|| attribute.IsNamespace) {
return false;
}
XmlAttributeCollection attributes;
if (!CheckAttributePosition(attribute, out attributes, attributeIndex)
&& !ResetAttributePosition(attribute, attributes, out attributeIndex)) {
return false;
}
for (int i = attributeIndex + 1; i < attributes.Count; i++) {
attribute = attributes[i];
if (!attribute.IsNamespace) {
source = attribute;
attributeIndex = i;
return true;
}
}
return false;
}