Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / XPath / Internal / XPathAncestorIterator.cs / 1305376 / XPathAncestorIterator.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace MS.Internal.Xml.XPath { using System; using System.Xml; using System.Xml.XPath; using System.Diagnostics; using System.Globalization; internal class XPathAncestorIterator: XPathAxisIterator { public XPathAncestorIterator(XPathNavigator nav, XPathNodeType type, bool matchSelf) : base(nav, type, matchSelf) {} public XPathAncestorIterator(XPathNavigator nav, string name, string namespaceURI, bool matchSelf) : base(nav, name, namespaceURI, matchSelf) {} public XPathAncestorIterator(XPathAncestorIterator other) : base(other) { } public override bool MoveNext() { if (first) { first = false; if(matchSelf && Matches) { position = 1; return true; } } while (nav.MoveToParent()) { if (Matches) { position ++; return true; } } return false; } public override XPathNodeIterator Clone() { return new XPathAncestorIterator(this); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace MS.Internal.Xml.XPath { using System; using System.Xml; using System.Xml.XPath; using System.Diagnostics; using System.Globalization; internal class XPathAncestorIterator: XPathAxisIterator { public XPathAncestorIterator(XPathNavigator nav, XPathNodeType type, bool matchSelf) : base(nav, type, matchSelf) {} public XPathAncestorIterator(XPathNavigator nav, string name, string namespaceURI, bool matchSelf) : base(nav, name, namespaceURI, matchSelf) {} public XPathAncestorIterator(XPathAncestorIterator other) : base(other) { } public override bool MoveNext() { if (first) { first = false; if(matchSelf && Matches) { position = 1; return true; } } while (nav.MoveToParent()) { if (Matches) { position ++; return true; } } return false; } public override XPathNodeIterator Clone() { return new XPathAncestorIterator(this); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SupportingTokenBindingElement.cs
- DataControlField.cs
- TextServicesCompartmentContext.cs
- CatalogZoneBase.cs
- MultipleViewPattern.cs
- CodeIdentifier.cs
- InkCanvasSelectionAdorner.cs
- DataSourceXmlTextReader.cs
- PersonalizableTypeEntry.cs
- RangeValuePattern.cs
- ServiceDocument.cs
- ValidationHelper.cs
- RestClientProxyHandler.cs
- RecordBuilder.cs
- RegexCapture.cs
- NameValueFileSectionHandler.cs
- ActivityStatusChangeEventArgs.cs
- AsyncCompletedEventArgs.cs
- DataControlImageButton.cs
- AppDomainShutdownMonitor.cs
- WindowPatternIdentifiers.cs
- SpecularMaterial.cs
- ChildDocumentBlock.cs
- ConfigurationSchemaErrors.cs
- CqlErrorHelper.cs
- ReaderWriterLockWrapper.cs
- GeometryCombineModeValidation.cs
- LZCodec.cs
- StringFormat.cs
- RelationshipEnd.cs
- WindowsListViewScroll.cs
- ImageCollectionCodeDomSerializer.cs
- TraceHwndHost.cs
- SoapException.cs
- XmlC14NWriter.cs
- SqlXmlStorage.cs
- XsdBuilder.cs
- ECDiffieHellman.cs
- WindowsRichEditRange.cs
- _ProxyChain.cs
- PropertyIdentifier.cs
- StreamGeometry.cs
- UserMapPath.cs
- Model3DGroup.cs
- Size3D.cs
- ListBindableAttribute.cs
- StylusButton.cs
- FolderBrowserDialog.cs
- DropShadowEffect.cs
- TreeNodeClickEventArgs.cs
- BuildResult.cs
- ModuleBuilderData.cs
- RefExpr.cs
- TextContainerChangedEventArgs.cs
- TrackingServices.cs
- TypeExtensionConverter.cs
- DbBuffer.cs
- WorkflowViewStateService.cs
- ToolStripDropDownMenu.cs
- PngBitmapDecoder.cs
- CriticalFinalizerObject.cs
- Ticks.cs
- NativeCompoundFileAPIs.cs
- TextEditorTables.cs
- WebPartExportVerb.cs
- DbProviderFactoriesConfigurationHandler.cs
- XhtmlBasicLiteralTextAdapter.cs
- DataRowChangeEvent.cs
- StatusBarDrawItemEvent.cs
- ServiceModelExtensionElement.cs
- X509ChainPolicy.cs
- SqlCacheDependencyDatabaseCollection.cs
- PersistenceContextEnlistment.cs
- SspiSecurityTokenParameters.cs
- QilTargetType.cs
- PersonalizableTypeEntry.cs
- EntityViewGenerationAttribute.cs
- Polygon.cs
- EventDescriptorCollection.cs
- IsolatedStorageFilePermission.cs
- WrapperSecurityCommunicationObject.cs
- LineSegment.cs
- OrderedDictionaryStateHelper.cs
- MailBnfHelper.cs
- PointHitTestResult.cs
- CustomTypeDescriptor.cs
- IriParsingElement.cs
- formatter.cs
- MethodBody.cs
- SqlSupersetValidator.cs
- QueryCacheEntry.cs
- NextPreviousPagerField.cs
- CustomCategoryAttribute.cs
- UnsafeNativeMethods.cs
- CroppedBitmap.cs
- ClientSideProviderDescription.cs
- TrustLevel.cs
- DependencyPropertyValueSerializer.cs
- ReverseInheritProperty.cs
- Panel.cs