Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / TextDecorationCollection.cs / 1305600 / TextDecorationCollection.cs
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
//
// Description: TextDecorationCollection class
//
// History:
// 10/14/2004: Garyyang Created the file
//
//---------------------------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Globalization;
using System.Windows.Media.Animation;
using System.Windows.Markup;
using MS.Internal.PresentationCore;
namespace System.Windows
{
///
/// A collection of text decoration instances
///
[TypeConverter(typeof(TextDecorationCollectionConverter))]
[Localizability(LocalizationCategory.None, Readability=Readability.Unreadable)]
public sealed partial class TextDecorationCollection : Animatable, IList
{
///
/// Compare this collection with another TextDecorations.
///
/// the text decoration collection to be compared
/// true if two collections of TextDecorations contain equal TextDecoration objects in the
/// the same order. false otherwise
///
///
/// The method doesn't check "full" equality as it can not take into account of all the possible
/// values associated with the DependencyObject,such as Animation, DataBinding and Attached property.
/// It only compares the public properties to serve the specific Framework's needs in inline property
/// management and Editing serialization.
///
[FriendAccessAllowed] // used by Framework
internal bool ValueEquals(TextDecorationCollection textDecorations)
{
if (textDecorations == null)
return false; // o is either null or not TextDecorations object
if (this == textDecorations)
return true; // Reference equality.
if ( this.Count != textDecorations.Count)
return false; // Two counts are different.
// To be considered equal, TextDecorations should be same in the exact order.
// Order matters because they imply the Z-order of the text decorations on screen.
// Same set of text decorations drawn with different orders may have different result.
for (int i = 0; i < this.Count; i++)
{
if (!this[i].ValueEquals(textDecorations[i]))
return false;
}
return true;
}
///
/// Add a collection of text decorations into the current collection
///
/// The collection to be added
[CLSCompliant(false)]
public void Add(IEnumerable textDecorations)
{
if (textDecorations == null)
{
throw new ArgumentNullException("textDecorations");
}
foreach(TextDecoration textDecoration in textDecorations)
{
Add(textDecoration);
}
}
}
}
// 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
- ClientOptions.cs
- DataGridViewHeaderCell.cs
- SelectionItemProviderWrapper.cs
- SQLCharsStorage.cs
- EpmContentSerializer.cs
- TreeNodeStyleCollectionEditor.cs
- DescendentsWalkerBase.cs
- ObjectDataSourceDisposingEventArgs.cs
- HttpModuleCollection.cs
- PageParserFilter.cs
- MatrixCamera.cs
- FactoryId.cs
- WebPartDisplayModeEventArgs.cs
- DataGridViewColumnHeaderCell.cs
- InputScope.cs
- ImageClickEventArgs.cs
- QilBinary.cs
- BmpBitmapEncoder.cs
- ConditionBrowserDialog.cs
- TypedDataSetSchemaImporterExtension.cs
- ByteAnimationBase.cs
- SoapServerProtocol.cs
- __FastResourceComparer.cs
- SQLGuidStorage.cs
- EmptyArray.cs
- KerberosSecurityTokenAuthenticator.cs
- DataReceivedEventArgs.cs
- Translator.cs
- KeyInstance.cs
- Single.cs
- WebPartUserCapability.cs
- Table.cs
- HandlerBase.cs
- XmlWriter.cs
- StylusPointProperty.cs
- RenderDataDrawingContext.cs
- SQLByte.cs
- CodeAttributeDeclarationCollection.cs
- StickyNoteAnnotations.cs
- TransactionScopeDesigner.cs
- WindowsAuthenticationEventArgs.cs
- DesignerVerbToolStripMenuItem.cs
- SqlTypesSchemaImporter.cs
- ManualResetEventSlim.cs
- Qualifier.cs
- SymmetricKeyWrap.cs
- Compiler.cs
- Delegate.cs
- PinProtectionHelper.cs
- DoubleAnimationUsingPath.cs
- BitmapEffectGroup.cs
- TableRowCollection.cs
- DocumentPage.cs
- TextTreeTextBlock.cs
- TextServicesContext.cs
- FieldNameLookup.cs
- Wow64ConfigurationLoader.cs
- ExtractorMetadata.cs
- InvokePatternIdentifiers.cs
- BidirectionalDictionary.cs
- SoundPlayer.cs
- EmptyStringExpandableObjectConverter.cs
- CustomActivityDesigner.cs
- MsmqProcessProtocolHandler.cs
- BulletedList.cs
- ClipboardProcessor.cs
- FindCriteria11.cs
- XmlTextEncoder.cs
- XsdDuration.cs
- InsufficientMemoryException.cs
- OrthographicCamera.cs
- CopyOfAction.cs
- EmbeddedMailObjectsCollection.cs
- GeometryModel3D.cs
- RegexWriter.cs
- AuthenticatingEventArgs.cs
- GenericUriParser.cs
- Msec.cs
- SortQuery.cs
- FormsAuthenticationCredentials.cs
- HotSpot.cs
- InkCanvasInnerCanvas.cs
- TypeResolver.cs
- XsltQilFactory.cs
- CoreSwitches.cs
- WebPartConnection.cs
- DefaultTextStore.cs
- DesignerProperties.cs
- CodeDirectionExpression.cs
- SoapObjectReader.cs
- WriteableOnDemandPackagePart.cs
- ZoneLinkButton.cs
- InputLanguageEventArgs.cs
- DBCommandBuilder.cs
- HorizontalAlignConverter.cs
- MultiView.cs
- SafeHandles.cs
- BamlStream.cs
- UserMapPath.cs
- DoWhileDesigner.xaml.cs