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
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BigInt.cs
- FrameworkElementAutomationPeer.cs
- XmlSchemaValidationException.cs
- StaticFileHandler.cs
- ConnectivityStatus.cs
- SqlDataSourceCache.cs
- ContextCorrelationInitializer.cs
- ScriptServiceAttribute.cs
- DataBindingExpressionBuilder.cs
- ElementProxy.cs
- GenericsInstances.cs
- WindowPattern.cs
- Label.cs
- HMACSHA384.cs
- CompilationLock.cs
- EnlistmentTraceIdentifier.cs
- EditBehavior.cs
- CollectionsUtil.cs
- XamlHostingConfiguration.cs
- TreeViewBindingsEditorForm.cs
- LocalValueEnumerator.cs
- ConcurrentStack.cs
- DBSchemaTable.cs
- DateTimeOffsetAdapter.cs
- SequentialUshortCollection.cs
- shaper.cs
- SpellCheck.cs
- ValidationException.cs
- XmlEncodedRawTextWriter.cs
- Int16.cs
- ColorPalette.cs
- EntitySqlQueryBuilder.cs
- SoundPlayerAction.cs
- SecurityDocument.cs
- UTF32Encoding.cs
- VisualCollection.cs
- UnsafeNativeMethodsTablet.cs
- EditorServiceContext.cs
- DetailsView.cs
- Serializer.cs
- ListChangedEventArgs.cs
- HttpModuleCollection.cs
- WriteStateInfoBase.cs
- ComplexTypeEmitter.cs
- BufferedStream.cs
- CookielessHelper.cs
- figurelength.cs
- JoinSymbol.cs
- XmlAttributeOverrides.cs
- ObjectDataSourceFilteringEventArgs.cs
- DocumentApplicationJournalEntry.cs
- ControlSerializer.cs
- input.cs
- RSACryptoServiceProvider.cs
- WebPartVerbCollection.cs
- MatrixTransform3D.cs
- ComponentEvent.cs
- XamlFrame.cs
- ExecutedRoutedEventArgs.cs
- DataGridViewComboBoxColumn.cs
- OutputCacheProfileCollection.cs
- WebErrorHandler.cs
- WmlTextViewAdapter.cs
- CounterSampleCalculator.cs
- ConfigurationPropertyCollection.cs
- GroupBoxAutomationPeer.cs
- ConfigurationSection.cs
- WebPartMenuStyle.cs
- TextTrailingCharacterEllipsis.cs
- WhiteSpaceTrimStringConverter.cs
- StringAttributeCollection.cs
- SystemResourceHost.cs
- CollectionAdapters.cs
- Context.cs
- CheckBoxField.cs
- Transform.cs
- CriticalFinalizerObject.cs
- ScrollBar.cs
- HideDisabledControlAdapter.cs
- FileSecurity.cs
- HelpEvent.cs
- HtmlSelect.cs
- ConfigXmlText.cs
- XmlSerializerNamespaces.cs
- TemplateBindingExpressionConverter.cs
- IItemProperties.cs
- GetIndexBinder.cs
- CodeGen.cs
- CompressedStack.cs
- XmlSchemaException.cs
- Int16Storage.cs
- Glyph.cs
- SingleConverter.cs
- PagesChangedEventArgs.cs
- AppSettingsExpressionBuilder.cs
- CheckoutException.cs
- loginstatus.cs
- RangeValidator.cs
- ImpersonationContext.cs
- OperationContractGenerationContext.cs