Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Framework / System / Windows / Documents / Run.cs / 1 / Run.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // Description: Run class - Text node in Flow content (text run) // //--------------------------------------------------------------------------- using MS.Internal; // Invariant.Assert using System.Windows.Markup; // ContentProperty namespace System.Windows.Documents { ////// A terminal element in text flow hierarchy - contains a uniformatted run of unicode characters /// [ContentProperty("Text")] public class Run : Inline { //------------------------------------------------------------------- // // Constructors // //------------------------------------------------------------------- #region Constructors ////// Initializes an instance of Run class. /// public Run() { } ////// Initializes an instance of Run class specifying its text content. /// /// /// Text content assigned to the Run. /// public Run(string text) : this(text, null) { } ////// Creates a new Run instance. /// /// /// Optional text content. May be null. /// /// /// Optional position at which to insert the new Run. May /// be null. /// public Run(string text, TextPointer insertionPosition) { if (insertionPosition != null) { insertionPosition.TextContainer.BeginChange(); } try { if (insertionPosition != null) { // This will throw InvalidOperationException if schema validity is violated. insertionPosition.InsertInline(this); } if (text != null) { // Do not use Text property as it has perf impact on parser. this.ContentStart.InsertTextInRun(text); } } finally { if (insertionPosition != null) { insertionPosition.TextContainer.EndChange(); } } } #endregion Constructors //-------------------------------------------------------------------- // // Public Properties // //------------------------------------------------------------------- #region Public Properties ////// The content spanned by this TextElement. /// public string Text { get { return TextRangeBase.GetTextInternal(this.ContentStart, this.ContentEnd); } set { if (value == null) { value = String.Empty; } TextContainer textContainer = this.TextContainer; textContainer.BeginChange(); try { TextPointer contentStart = this.ContentStart; if (!this.IsEmpty) { textContainer.DeleteContentInternal(contentStart, this.ContentEnd); } contentStart.InsertTextInRun(value); } finally { textContainer.EndChange(); } } } #endregion Public Properties //-------------------------------------------------------------------- // // Internal Methods // //-------------------------------------------------------------------- #region Internal Methods // // This property // 1. Finds the correct initial size for the _effectiveValues store on the current DependencyObject // 2. This is a performance optimization // internal override int EffectiveValuesInitialSize { get { return 13; } } ////// This method is used by TypeDescriptor to determine if this property should /// be serialized. /// [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)] public bool ShouldSerializeText(XamlDesignerSerializationManager manager) { return manager != null && manager.XmlWriter == null; } #endregion Internal Methods } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // Description: Run class - Text node in Flow content (text run) // //--------------------------------------------------------------------------- using MS.Internal; // Invariant.Assert using System.Windows.Markup; // ContentProperty namespace System.Windows.Documents { ////// A terminal element in text flow hierarchy - contains a uniformatted run of unicode characters /// [ContentProperty("Text")] public class Run : Inline { //------------------------------------------------------------------- // // Constructors // //------------------------------------------------------------------- #region Constructors ////// Initializes an instance of Run class. /// public Run() { } ////// Initializes an instance of Run class specifying its text content. /// /// /// Text content assigned to the Run. /// public Run(string text) : this(text, null) { } ////// Creates a new Run instance. /// /// /// Optional text content. May be null. /// /// /// Optional position at which to insert the new Run. May /// be null. /// public Run(string text, TextPointer insertionPosition) { if (insertionPosition != null) { insertionPosition.TextContainer.BeginChange(); } try { if (insertionPosition != null) { // This will throw InvalidOperationException if schema validity is violated. insertionPosition.InsertInline(this); } if (text != null) { // Do not use Text property as it has perf impact on parser. this.ContentStart.InsertTextInRun(text); } } finally { if (insertionPosition != null) { insertionPosition.TextContainer.EndChange(); } } } #endregion Constructors //-------------------------------------------------------------------- // // Public Properties // //------------------------------------------------------------------- #region Public Properties ////// The content spanned by this TextElement. /// public string Text { get { return TextRangeBase.GetTextInternal(this.ContentStart, this.ContentEnd); } set { if (value == null) { value = String.Empty; } TextContainer textContainer = this.TextContainer; textContainer.BeginChange(); try { TextPointer contentStart = this.ContentStart; if (!this.IsEmpty) { textContainer.DeleteContentInternal(contentStart, this.ContentEnd); } contentStart.InsertTextInRun(value); } finally { textContainer.EndChange(); } } } #endregion Public Properties //-------------------------------------------------------------------- // // Internal Methods // //-------------------------------------------------------------------- #region Internal Methods // // This property // 1. Finds the correct initial size for the _effectiveValues store on the current DependencyObject // 2. This is a performance optimization // internal override int EffectiveValuesInitialSize { get { return 13; } } ////// This method is used by TypeDescriptor to determine if this property should /// be serialized. /// [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)] public bool ShouldSerializeText(XamlDesignerSerializationManager manager) { return manager != null && manager.XmlWriter == null; } #endregion Internal Methods } } // 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
- QuadraticBezierSegment.cs
- RetriableClipboard.cs
- unitconverter.cs
- FontCollection.cs
- SafeHandle.cs
- XmlCharCheckingWriter.cs
- PointKeyFrameCollection.cs
- MoveSizeWinEventHandler.cs
- EntityCommand.cs
- TraceUtility.cs
- Style.cs
- ProfileGroupSettingsCollection.cs
- IsolationInterop.cs
- StorageEntitySetMapping.cs
- TextOutput.cs
- RadialGradientBrush.cs
- RadioButtonList.cs
- XmlTextReaderImplHelpers.cs
- TextBox.cs
- basenumberconverter.cs
- RegistrationContext.cs
- SizeAnimation.cs
- DynamicRenderer.cs
- CodeParameterDeclarationExpressionCollection.cs
- QilList.cs
- SigningProgress.cs
- SchemaTableColumn.cs
- MetabaseServerConfig.cs
- TextRangeBase.cs
- ClickablePoint.cs
- Size3D.cs
- SecurityStandardsManager.cs
- XNodeValidator.cs
- FileUtil.cs
- EventLogPermission.cs
- MemberPath.cs
- ExternalException.cs
- TextServicesPropertyRanges.cs
- GeometryModel3D.cs
- MediaCommands.cs
- SafeViewOfFileHandle.cs
- BoundColumn.cs
- XmlSchemaNotation.cs
- CurrentChangingEventManager.cs
- ColumnWidthChangedEvent.cs
- DictionaryEntry.cs
- SHA1Managed.cs
- SQLStringStorage.cs
- CodeAttributeArgument.cs
- linebase.cs
- WebServiceResponse.cs
- DataRecordObjectView.cs
- SmtpTransport.cs
- filewebresponse.cs
- DrawingAttributeSerializer.cs
- StandardTransformFactory.cs
- WindowsTooltip.cs
- SystemIcons.cs
- ObjectDataSourceEventArgs.cs
- MetadataFile.cs
- SafeNativeMethods.cs
- DesignOnlyAttribute.cs
- PartialCachingControl.cs
- HttpEncoderUtility.cs
- EntityTypeEmitter.cs
- DataObjectEventArgs.cs
- IsolatedStorageFilePermission.cs
- SQLDateTimeStorage.cs
- BindingWorker.cs
- WebControlParameterProxy.cs
- DateTimeOffsetStorage.cs
- TextWriterTraceListener.cs
- codemethodreferenceexpression.cs
- COM2FontConverter.cs
- SqlDataSourceCache.cs
- ClientEndpointLoader.cs
- WebControl.cs
- UInt32Converter.cs
- Tracer.cs
- XmlSchemaSimpleTypeRestriction.cs
- MobileComponentEditorPage.cs
- PersonalizationProviderCollection.cs
- ToolStripSeparatorRenderEventArgs.cs
- xsdvalidator.cs
- BaseComponentEditor.cs
- WebServiceEndpoint.cs
- TextEncodedRawTextWriter.cs
- SqlRowUpdatingEvent.cs
- ClosableStream.cs
- GatewayIPAddressInformationCollection.cs
- MonthChangedEventArgs.cs
- ProfileService.cs
- KeyEventArgs.cs
- MessageTraceRecord.cs
- ColumnHeader.cs
- WindowPatternIdentifiers.cs
- JournalEntryStack.cs
- UnmanagedMemoryStream.cs
- XmlConverter.cs
- LinkButton.cs