Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Xml / System / Xml / Dom / XmlSignificantWhitespace.cs / 1 / XmlSignificantWhitespace.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// [....]
//-----------------------------------------------------------------------------
namespace System.Xml
{
using System;
using System.Xml.XPath;
using System.Text;
using System.Diagnostics;
// Represents the text content of an element or attribute.
public class XmlSignificantWhitespace : XmlCharacterData {
protected internal XmlSignificantWhitespace( string strData, XmlDocument doc ) : base( strData, doc ) {
if ( !doc.IsLoading && !base.CheckOnData( strData ) )
throw new ArgumentException(Res.GetString(Res.Xdom_WS_Char));
}
// Gets the name of the node.
public override String Name {
get {
return OwnerDocument.strSignificantWhitespaceName;
}
}
// Gets the name of the current node without the namespace prefix.
public override String LocalName {
get {
return OwnerDocument.strSignificantWhitespaceName;
}
}
// Gets the type of the current node.
public override XmlNodeType NodeType {
get {
return XmlNodeType.SignificantWhitespace;
}
}
public override XmlNode ParentNode {
get {
switch (parentNode.NodeType) {
case XmlNodeType.Document:
return base.ParentNode;
case XmlNodeType.Text:
case XmlNodeType.CDATA:
case XmlNodeType.Whitespace:
case XmlNodeType.SignificantWhitespace:
XmlNode parent = parentNode.parentNode;
while (parent.IsText) {
parent = parent.parentNode;
}
return parent;
default:
return parentNode;
}
}
}
// Creates a duplicate of this node.
public override XmlNode CloneNode(bool deep) {
Debug.Assert( OwnerDocument != null );
return OwnerDocument.CreateSignificantWhitespace( Data );
}
public override String Value {
get {
return Data;
}
set {
if ( CheckOnData( value ) )
Data = value;
else
throw new ArgumentException(Res.GetString(Res.Xdom_WS_Char));
}
}
// Saves the node to the specified XmlWriter.
public override void WriteTo(XmlWriter w) {
w.WriteString(Data);
}
// Saves all the children of the node to the specified XmlWriter.
public override void WriteContentTo(XmlWriter w) {
// Intentionally do nothing
}
internal override XPathNodeType XPNodeType {
get {
XPathNodeType xnt = XPathNodeType.SignificantWhitespace;
DecideXPNodeTypeForTextNodes( this, ref xnt );
return xnt;
}
}
internal override bool IsText {
get {
return true;
}
}
internal override XmlNode PreviousText {
get {
if (parentNode.IsText) {
return parentNode;
}
return null;
}
}
}
}
// 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
- PrintControllerWithStatusDialog.cs
- ApplicationId.cs
- ConnectionPointCookie.cs
- ObjectViewEntityCollectionData.cs
- ColumnHeaderCollectionEditor.cs
- BlockUIContainer.cs
- OpenTypeLayout.cs
- StringArrayConverter.cs
- XmlWellformedWriter.cs
- Attachment.cs
- DesignerActionMethodItem.cs
- ReferencedType.cs
- HybridDictionary.cs
- Authorization.cs
- X509ClientCertificateAuthenticationElement.cs
- RepeaterItem.cs
- PathGradientBrush.cs
- MenuItem.cs
- DataGridColumnHeaderItemAutomationPeer.cs
- QfeChecker.cs
- OdbcRowUpdatingEvent.cs
- QilBinary.cs
- StreamResourceInfo.cs
- OverrideMode.cs
- VerificationAttribute.cs
- KnowledgeBase.cs
- FlowchartSizeFeature.cs
- CursorConverter.cs
- CommonDialog.cs
- TdsParserStateObject.cs
- WindowsIdentity.cs
- CompositeFontInfo.cs
- KeyFrames.cs
- LongValidatorAttribute.cs
- TemplateInstanceAttribute.cs
- ImageUrlEditor.cs
- HtmlImage.cs
- ResourceDescriptionAttribute.cs
- SchemaDeclBase.cs
- CommentEmitter.cs
- WindowsListBox.cs
- AnimatedTypeHelpers.cs
- DataFieldEditor.cs
- ScriptingJsonSerializationSection.cs
- DataColumnPropertyDescriptor.cs
- PrintPreviewGraphics.cs
- xmlglyphRunInfo.cs
- Currency.cs
- Queue.cs
- DataSvcMapFile.cs
- PageContentAsyncResult.cs
- HttpClientCertificate.cs
- AcceleratedTokenProviderState.cs
- BindingNavigator.cs
- Point3D.cs
- HtmlInputButton.cs
- XmlDocumentFragment.cs
- ConfigPathUtility.cs
- SpoolingTask.cs
- StringArrayEditor.cs
- CatalogZoneBase.cs
- SelectionItemPattern.cs
- EmptyStringExpandableObjectConverter.cs
- UIElement3D.cs
- LiteralDesigner.cs
- XmlSchemaAnnotation.cs
- LineSegment.cs
- QilFactory.cs
- CodeNamespaceCollection.cs
- FileSystemInfo.cs
- PreviewKeyDownEventArgs.cs
- RadioButtonStandardAdapter.cs
- GenericPrincipal.cs
- XmlName.cs
- EastAsianLunisolarCalendar.cs
- DictionaryContent.cs
- Int16Converter.cs
- Point3DCollectionConverter.cs
- ConnectionPoint.cs
- InstanceCollisionException.cs
- RbTree.cs
- FocusManager.cs
- CounterSample.cs
- _Semaphore.cs
- DesignSurfaceServiceContainer.cs
- Signature.cs
- XmlSchemaSimpleType.cs
- MethodBuilderInstantiation.cs
- SQLInt64.cs
- BrowserCapabilitiesCodeGenerator.cs
- StrokeNodeOperations.cs
- NumberEdit.cs
- WebPartConnectionsCloseVerb.cs
- GridView.cs
- DrawingGroupDrawingContext.cs
- TypeResolver.cs
- PersonalizablePropertyEntry.cs
- ScrollEvent.cs
- RegistryExceptionHelper.cs
- CollaborationHelperFunctions.cs