Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / MS / Internal / Data / XmlNodeComparer.cs / 1 / XmlNodeComparer.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: Defines XmlNodeComparer object, used to sort a view of data produced by an XmlDataSource. // // Specs: [....]/connecteddata/M5%20Specs/UIBinding.mht // //--------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Globalization; using System.Xml; using MS.Internal.Data; namespace MS.Internal.Data { ////// The XmlNodeComparer is used to sort a view of data produced by an XmlDataSource. /// internal class XmlNodeComparer : IComparer { ////// Constructor. /// /// array of sort parameters /// namespace manager, to control queries /// culture to use for comparisons internal XmlNodeComparer(SortDescriptionCollection sortParameters, XmlNamespaceManager namespaceManager, CultureInfo culture) { _sortParameters = sortParameters; _namespaceManager = namespaceManager; _culture = (culture == null) ? CultureInfo.InvariantCulture : culture; } int IComparer.Compare(object o1, object o2) { int result = 0; XmlNode node1 = o1 as XmlNode; XmlNode node2 = o2 as XmlNode; if (node1 == null) return -1; if (node2 == null) return +1; for (int k = 0; k < _sortParameters.Count; ++k) { string valueX = XmlHelper.SelectStringValue(node1, _sortParameters[k].PropertyName, _namespaceManager); string valueY = XmlHelper.SelectStringValue(node2, _sortParameters[k].PropertyName, _namespaceManager); result = String.Compare(valueX, valueY, false, _culture); if (_sortParameters[k].Direction == ListSortDirection.Descending) result = -result; if (result != 0) break; } return result; } private SortDescriptionCollection _sortParameters; private XmlNamespaceManager _namespaceManager; CultureInfo _culture; } } // 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
- Source.cs
- KeyedQueue.cs
- ProjectionPathBuilder.cs
- DataErrorValidationRule.cs
- QuaternionAnimationUsingKeyFrames.cs
- Walker.cs
- CompilerCollection.cs
- DBAsyncResult.cs
- WindowsRichEdit.cs
- _emptywebproxy.cs
- ConnectionManagementElementCollection.cs
- XmlCDATASection.cs
- OrderedDictionary.cs
- XamlPathDataSerializer.cs
- StoreUtilities.cs
- SqlCommand.cs
- EmissiveMaterial.cs
- RuntimeEnvironment.cs
- DesignerDataStoredProcedure.cs
- HtmlSelect.cs
- EntityModelBuildProvider.cs
- WebControlAdapter.cs
- UshortList2.cs
- AdvancedBindingEditor.cs
- ConnectionInterfaceCollection.cs
- CodeMemberField.cs
- FragmentQuery.cs
- AnnotationAuthorChangedEventArgs.cs
- AppDomainManager.cs
- BehaviorDragDropEventArgs.cs
- XmlImplementation.cs
- SqlParameterizer.cs
- RemotingException.cs
- WebEventCodes.cs
- Ipv6Element.cs
- InputElement.cs
- RadialGradientBrush.cs
- RunWorkerCompletedEventArgs.cs
- ImageMapEventArgs.cs
- SerTrace.cs
- InternalBufferOverflowException.cs
- DataTableReader.cs
- diagnosticsswitches.cs
- SequenceFullException.cs
- WebBrowserDesigner.cs
- LocalFileSettingsProvider.cs
- SqlConnectionString.cs
- GlobalizationSection.cs
- StoryFragments.cs
- RadioButtonRenderer.cs
- ExtensionsSection.cs
- QuadraticBezierSegment.cs
- RewritingValidator.cs
- X509Utils.cs
- CryptoApi.cs
- PresentationTraceSources.cs
- AuthorizationRule.cs
- XmlSchemaType.cs
- AdornerLayer.cs
- MergablePropertyAttribute.cs
- UIElement3D.cs
- BamlLocalizabilityResolver.cs
- DispatcherProcessingDisabled.cs
- BuildProvider.cs
- VerificationAttribute.cs
- ServiceObjectContainer.cs
- CellQuery.cs
- DBDataPermission.cs
- DbDataAdapter.cs
- UnsafeNativeMethodsCLR.cs
- WinOEToolBoxItem.cs
- PerformanceCountersElement.cs
- ChameleonKey.cs
- Vector.cs
- TdsParserSafeHandles.cs
- SqlMethodCallConverter.cs
- AnnotationMap.cs
- Utils.cs
- SubMenuStyle.cs
- NonClientArea.cs
- SolidColorBrush.cs
- BasicHttpBindingCollectionElement.cs
- GeneralTransform.cs
- TaiwanCalendar.cs
- CodeBinaryOperatorExpression.cs
- OracleSqlParser.cs
- CrossSiteScriptingValidation.cs
- DBCSCodePageEncoding.cs
- ControlBuilder.cs
- CompilerScope.cs
- HybridObjectCache.cs
- HostedNamedPipeTransportManager.cs
- PropertyEmitter.cs
- ItemsControlAutomationPeer.cs
- ConfigurationManagerHelper.cs
- Rotation3DKeyFrameCollection.cs
- ExceptionNotification.cs
- HttpListenerResponse.cs
- CodeBinaryOperatorExpression.cs
- LingerOption.cs