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
- DynamicFilter.cs
- TdsRecordBufferSetter.cs
- ObjectConverter.cs
- ToolStripProgressBar.cs
- RemoteDebugger.cs
- EncryptedPackage.cs
- ScaleTransform.cs
- BitmapEffectInputConnector.cs
- ThemeDirectoryCompiler.cs
- PropertyChangedEventManager.cs
- DataContractSerializerOperationGenerator.cs
- DoubleAnimationBase.cs
- SqlTrackingWorkflowInstance.cs
- Compilation.cs
- externdll.cs
- ResourceIDHelper.cs
- ConnectionStringsSection.cs
- XhtmlBasicLinkAdapter.cs
- SizeFConverter.cs
- ZipIOZip64EndOfCentralDirectoryLocatorBlock.cs
- VScrollBar.cs
- LogArchiveSnapshot.cs
- HttpProfileBase.cs
- DeferrableContentConverter.cs
- JavascriptCallbackMessageInspector.cs
- QueryRelOp.cs
- DockPanel.cs
- CompilationUnit.cs
- Visitor.cs
- RegistryConfigurationProvider.cs
- LocalBuilder.cs
- DesignerHierarchicalDataSourceView.cs
- Listbox.cs
- ControlAdapter.cs
- FullTextLine.cs
- CurrentChangingEventArgs.cs
- TickBar.cs
- ActivationServices.cs
- NonParentingControl.cs
- DetailsViewDeleteEventArgs.cs
- LayoutTable.cs
- EtwTrace.cs
- ProbeMatchesMessage11.cs
- XmlHierarchyData.cs
- SoapMessage.cs
- RadioButtonList.cs
- DataGridColumnCollection.cs
- ScriptingRoleServiceSection.cs
- CapabilitiesPattern.cs
- sqlstateclientmanager.cs
- ACE.cs
- SqlOuterApplyReducer.cs
- IriParsingElement.cs
- DeviceSpecificDialogCachedState.cs
- ArrayConverter.cs
- ObjectStateManagerMetadata.cs
- MetadataItemSerializer.cs
- Tokenizer.cs
- GPPOINTF.cs
- EdmProperty.cs
- XPathDocumentBuilder.cs
- WindowCollection.cs
- DecimalAnimation.cs
- DataSetUtil.cs
- TraceSwitch.cs
- precedingsibling.cs
- SoapSchemaExporter.cs
- Viewport3DAutomationPeer.cs
- ExeConfigurationFileMap.cs
- newinstructionaction.cs
- DictionaryGlobals.cs
- RightsManagementEncryptedStream.cs
- StrokeNodeData.cs
- ContextMenu.cs
- RegexTree.cs
- formatter.cs
- Globals.cs
- RoleManagerModule.cs
- ListBase.cs
- DataKeyPropertyAttribute.cs
- DeadCharTextComposition.cs
- FeatureSupport.cs
- PolicyImporterElement.cs
- PerspectiveCamera.cs
- TableLayoutColumnStyleCollection.cs
- InstallerTypeAttribute.cs
- HTMLTagNameToTypeMapper.cs
- XmlDocumentSerializer.cs
- ClientTargetCollection.cs
- CopyOnWriteList.cs
- DataGridAutomationPeer.cs
- ListViewGroup.cs
- JpegBitmapDecoder.cs
- PointLight.cs
- WindowsGraphicsWrapper.cs
- FrameworkTextComposition.cs
- RegexNode.cs
- DebugView.cs
- ScriptServiceAttribute.cs
- XMLSchema.cs