Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / Xml / System / Xml / XPath / Internal / DescendantQuery.cs / 1 / DescendantQuery.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; internal class DescendantQuery : DescendantBaseQuery { XPathNodeIterator nodeIterator; internal DescendantQuery(Query qyParent, string Name, string Prefix, XPathNodeType Type, bool matchSelf, bool abbrAxis) : base(qyParent, Name, Prefix, Type, matchSelf, abbrAxis) {} public DescendantQuery(DescendantQuery other) : base(other) { this.nodeIterator = Clone(other.nodeIterator); } public override void Reset() { nodeIterator = null; base.Reset(); } public override XPathNavigator Advance() { while (true) { if (nodeIterator == null) { position = 0; XPathNavigator nav = qyInput.Advance(); if (nav == null) { return null; } if (NameTest) { if (TypeTest == XPathNodeType.ProcessingInstruction) { nodeIterator = new IteratorFilter(nav.SelectDescendants(TypeTest, matchSelf), Name); } else { nodeIterator = nav.SelectDescendants(Name, Namespace, matchSelf); } } else { nodeIterator = nav.SelectDescendants(TypeTest, matchSelf); } } if (nodeIterator.MoveNext()) { position++; currentNode = nodeIterator.Current; return currentNode; } else { nodeIterator = null; } } } public override XPathNodeIterator Clone() { return new DescendantQuery(this); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- AutomationPropertyInfo.cs
- LoginUtil.cs
- WindowShowOrOpenTracker.cs
- DataSourceXmlSubItemAttribute.cs
- QueryUtil.cs
- CodeGenerator.cs
- ClientSettings.cs
- SrgsToken.cs
- Brush.cs
- WsiProfilesElement.cs
- FixedBufferAttribute.cs
- ContainerActivationHelper.cs
- MouseGestureConverter.cs
- DataGridItemEventArgs.cs
- IdentityModelStringsVersion1.cs
- XPathAxisIterator.cs
- BooleanAnimationUsingKeyFrames.cs
- DragCompletedEventArgs.cs
- CultureTableRecord.cs
- UserUseLicenseDictionaryLoader.cs
- MailWebEventProvider.cs
- UniqueConstraint.cs
- XmlArrayItemAttributes.cs
- SignedPkcs7.cs
- ComponentManagerBroker.cs
- SizeConverter.cs
- MarkupProperty.cs
- ToolboxItemFilterAttribute.cs
- DataControlExtensions.cs
- Content.cs
- PointAnimation.cs
- CompositionAdorner.cs
- NumberFormatInfo.cs
- DebugController.cs
- WebBrowserProgressChangedEventHandler.cs
- ToolBarButtonDesigner.cs
- TraceSection.cs
- ComponentChangedEvent.cs
- MessageContractAttribute.cs
- DataGridViewRowEventArgs.cs
- TextComposition.cs
- XPathAncestorQuery.cs
- DeploymentSection.cs
- XmlElementAttribute.cs
- ProcessThread.cs
- EventProviderWriter.cs
- SingleConverter.cs
- VisualStateManager.cs
- LinqDataSourceEditData.cs
- WebBrowserDocumentCompletedEventHandler.cs
- UsernameTokenFactoryCredential.cs
- DbProviderServices.cs
- WindowAutomationPeer.cs
- HttpContext.cs
- DecimalStorage.cs
- HasCopySemanticsAttribute.cs
- WebPartMenu.cs
- SoapAttributeOverrides.cs
- ObjectListFieldCollection.cs
- TextTreeRootTextBlock.cs
- Parallel.cs
- ColumnMapTranslator.cs
- ImageListStreamer.cs
- Rect3D.cs
- XmlSiteMapProvider.cs
- WCFBuildProvider.cs
- XsltException.cs
- _SslSessionsCache.cs
- StandardBindingImporter.cs
- WinFormsComponentEditor.cs
- ManagedIStream.cs
- SqlRecordBuffer.cs
- AttachedPropertyBrowsableAttribute.cs
- SwitchElementsCollection.cs
- WindowsTitleBar.cs
- WmiEventSink.cs
- RelationshipDetailsRow.cs
- CommonDialog.cs
- FontUnit.cs
- HandlerMappingMemo.cs
- FrameDimension.cs
- HttpSessionStateWrapper.cs
- AttributeEmitter.cs
- AspNetCompatibilityRequirementsAttribute.cs
- CapabilitiesState.cs
- Decimal.cs
- HeaderedItemsControl.cs
- TextElementEnumerator.cs
- StrokeDescriptor.cs
- RegexCaptureCollection.cs
- AttributeProviderAttribute.cs
- HtmlSelect.cs
- SqlPersonalizationProvider.cs
- DispatcherOperation.cs
- SpecialNameAttribute.cs
- XmlHierarchicalDataSourceView.cs
- XmlConverter.cs
- ConvertersCollection.cs
- OpacityConverter.cs
- XmlFormatWriterGenerator.cs