Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- LicenseException.cs
- LogSwitch.cs
- DecryptedHeader.cs
- CompilationUtil.cs
- IdentityNotMappedException.cs
- EntityDataSourceSelectedEventArgs.cs
- LocalizationCodeDomSerializer.cs
- ToolStripItemCollection.cs
- DocComment.cs
- DockEditor.cs
- XmlSerializationGeneratedCode.cs
- SqlDataSourceDesigner.cs
- OdbcFactory.cs
- _Connection.cs
- streamingZipPartStream.cs
- HttpVersion.cs
- TextParentUndoUnit.cs
- OleDbParameter.cs
- IsolatedStorageException.cs
- QueryExecutionOption.cs
- ContourSegment.cs
- EpmSourceTree.cs
- WsdlServiceChannelBuilder.cs
- XmlKeywords.cs
- LiteralControl.cs
- SafeEventLogReadHandle.cs
- MessagePropertyFilter.cs
- ToolboxControl.cs
- WmlLinkAdapter.cs
- Binding.cs
- EditorBrowsableAttribute.cs
- EmbeddedMailObject.cs
- NavigationCommands.cs
- IgnoreSectionHandler.cs
- UIElement.cs
- UnSafeCharBuffer.cs
- MediaTimeline.cs
- FastEncoderStatics.cs
- RsaKeyIdentifierClause.cs
- QueryAccessibilityHelpEvent.cs
- WorkflowInstanceContextProvider.cs
- SymbolMethod.cs
- XmlSchemaSequence.cs
- ClientCultureInfo.cs
- CompositionAdorner.cs
- ServiceOperation.cs
- SqlConnectionPoolProviderInfo.cs
- GridSplitter.cs
- StrokeNodeData.cs
- _SslStream.cs
- ExpressionBuilderCollection.cs
- MessageDroppedTraceRecord.cs
- ToolStripDropDownItem.cs
- LogExtent.cs
- PropertyEntry.cs
- SimpleLine.cs
- TextParaClient.cs
- XmlAnyElementAttributes.cs
- ValueConversionAttribute.cs
- ReadOnlyDataSource.cs
- TagMapInfo.cs
- FrameworkTemplate.cs
- SoapParser.cs
- HMACSHA512.cs
- _AuthenticationState.cs
- DataGridRelationshipRow.cs
- Types.cs
- EpmCustomContentDeSerializer.cs
- ZipIOLocalFileBlock.cs
- Graph.cs
- IpcServerChannel.cs
- SystemColorTracker.cs
- SmiContextFactory.cs
- SmuggledIUnknown.cs
- StructuredType.cs
- ActivityExecutionWorkItem.cs
- NetworkStream.cs
- AsyncSerializedWorker.cs
- SpotLight.cs
- LinkDescriptor.cs
- ConcurrentStack.cs
- TransformerTypeCollection.cs
- SR.cs
- ItemList.cs
- ArgumentNullException.cs
- TemplateBindingExtensionConverter.cs
- MatcherBuilder.cs
- AssemblyBuilder.cs
- unsafenativemethodsother.cs
- AssemblyLoader.cs
- ListSortDescription.cs
- Section.cs
- SpStreamWrapper.cs
- InstanceCreationEditor.cs
- HttpFileCollection.cs
- ImportOptions.cs
- PartialCachingControl.cs
- CircleHotSpot.cs
- HtmlWindowCollection.cs
- EntityContainerEntitySetDefiningQuery.cs