Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / 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
- TextEndOfParagraph.cs
- SqlHelper.cs
- SqlClientFactory.cs
- MonitorWrapper.cs
- HttpProcessUtility.cs
- TextDocumentView.cs
- _LocalDataStore.cs
- CodeMemberEvent.cs
- BaseDataListPage.cs
- SmtpTransport.cs
- DataGridViewSelectedRowCollection.cs
- ADMembershipUser.cs
- BulletedList.cs
- SystemResourceHost.cs
- SQLChars.cs
- ImageMap.cs
- TraceUtils.cs
- DataColumnMappingCollection.cs
- FormatterConverter.cs
- DataControlButton.cs
- DbResourceAllocator.cs
- TargetConverter.cs
- StyleConverter.cs
- BasicViewGenerator.cs
- SqlDependency.cs
- InputMethodStateChangeEventArgs.cs
- IndexedDataBuffer.cs
- WpfGeneratedKnownTypes.cs
- BindingContext.cs
- SecurityContextTokenValidationException.cs
- KeyedQueue.cs
- CopyCodeAction.cs
- VariableModifiersHelper.cs
- QilFunction.cs
- PartialClassGenerationTask.cs
- Visitors.cs
- ChangeTracker.cs
- WindowsFormsHostPropertyMap.cs
- IsolationInterop.cs
- StylusPointPropertyInfo.cs
- TemplatePropertyEntry.cs
- ListViewDeleteEventArgs.cs
- DayRenderEvent.cs
- AxisAngleRotation3D.cs
- ModifiableIteratorCollection.cs
- SamlAuthorizationDecisionStatement.cs
- PeerNode.cs
- CodeStatement.cs
- DelegatedStream.cs
- HierarchicalDataSourceControl.cs
- DATA_BLOB.cs
- ObjectParameterCollection.cs
- ClientScriptManagerWrapper.cs
- ListViewGroupConverter.cs
- GridViewPageEventArgs.cs
- BitmapData.cs
- TableAdapterManagerMethodGenerator.cs
- TableDetailsCollection.cs
- TableLayoutRowStyleCollection.cs
- OrCondition.cs
- MediaPlayerState.cs
- HMAC.cs
- LabelEditEvent.cs
- ReadOnlyCollection.cs
- FunctionDetailsReader.cs
- ScriptingSectionGroup.cs
- Parameter.cs
- UpdateProgress.cs
- AutomationAttributeInfo.cs
- UrlAuthFailedErrorFormatter.cs
- PopOutPanel.cs
- SimpleHandlerBuildProvider.cs
- ParsedRoute.cs
- HtmlCommandAdapter.cs
- SqlDataSourceCommandParser.cs
- AnimatedTypeHelpers.cs
- EntityDataSourceChangingEventArgs.cs
- DecoderExceptionFallback.cs
- SyndicationContent.cs
- ObjectStorage.cs
- SemanticResolver.cs
- XXXInfos.cs
- RuntimeConfigurationRecord.cs
- XmlEnumAttribute.cs
- InfiniteTimeSpanConverter.cs
- UnionCodeGroup.cs
- WindowProviderWrapper.cs
- Directory.cs
- CqlParserHelpers.cs
- LZCodec.cs
- SendingRequestEventArgs.cs
- DeferredReference.cs
- SQLDecimal.cs
- TextTreeTextBlock.cs
- MinMaxParagraphWidth.cs
- OleDbException.cs
- DesignerRegionMouseEventArgs.cs
- ThreadStateException.cs
- InputEventArgs.cs
- PowerStatus.cs