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
- AsynchronousChannelMergeEnumerator.cs
- ToolStripProgressBar.cs
- GetReadStreamResult.cs
- ListBindableAttribute.cs
- GraphicsState.cs
- XmlUrlEditor.cs
- PageRequestManager.cs
- ObjectQueryProvider.cs
- SvcMapFileLoader.cs
- AvTraceFormat.cs
- ObjectConverter.cs
- SubMenuStyleCollection.cs
- TagPrefixInfo.cs
- WorkflowEnvironment.cs
- ProcessModelInfo.cs
- indexingfiltermarshaler.cs
- ActionMismatchAddressingException.cs
- WindowsFormsSynchronizationContext.cs
- SmtpNetworkElement.cs
- CopyAction.cs
- ScopedKnownTypes.cs
- RSAPKCS1SignatureFormatter.cs
- HoistedLocals.cs
- FixUpCollection.cs
- ISCIIEncoding.cs
- SoapAttributeOverrides.cs
- EndOfStreamException.cs
- GenericsInstances.cs
- WindowsTokenRoleProvider.cs
- SiteMapDataSourceDesigner.cs
- Parsers.cs
- EncryptedPackageFilter.cs
- TreePrinter.cs
- UserControlCodeDomTreeGenerator.cs
- DataRecord.cs
- SerializerDescriptor.cs
- FacetDescription.cs
- RectIndependentAnimationStorage.cs
- ECDiffieHellman.cs
- XmlQueryStaticData.cs
- CompatibleIComparer.cs
- Variant.cs
- TransformPattern.cs
- DependentTransaction.cs
- DetailsViewModeEventArgs.cs
- OpenTypeMethods.cs
- TTSEvent.cs
- TextContainerChangedEventArgs.cs
- SQLMoney.cs
- SpeakInfo.cs
- XmlNamespaceMapping.cs
- Reference.cs
- BasicExpressionVisitor.cs
- XmlUTF8TextWriter.cs
- OdbcReferenceCollection.cs
- DataControlHelper.cs
- ReflectionHelper.cs
- CodeFieldReferenceExpression.cs
- GCHandleCookieTable.cs
- EntityViewGenerationAttribute.cs
- PerspectiveCamera.cs
- querybuilder.cs
- Transform3D.cs
- SerialReceived.cs
- Stylesheet.cs
- PageStatePersister.cs
- FormViewPagerRow.cs
- AxImporter.cs
- ProfileBuildProvider.cs
- SoapMessage.cs
- DbDataRecord.cs
- AffineTransform3D.cs
- DirectoryLocalQuery.cs
- IHttpResponseInternal.cs
- DispatcherProcessingDisabled.cs
- NamespaceList.cs
- ConnectionStringSettingsCollection.cs
- SqlDataSourceEnumerator.cs
- TextRangeBase.cs
- ArcSegment.cs
- SignatureGenerator.cs
- XmlSchemaInclude.cs
- UpdatePanel.cs
- SqlConnectionHelper.cs
- XmlConverter.cs
- GeometryDrawing.cs
- BaseTemplateBuildProvider.cs
- HtmlMeta.cs
- CharEnumerator.cs
- CodeAttributeArgument.cs
- Domain.cs
- ProfileGroupSettingsCollection.cs
- SQLBytes.cs
- SchemaLookupTable.cs
- CopyCodeAction.cs
- AttributeQuery.cs
- SqlException.cs
- SystemTcpConnection.cs
- QilStrConcatenator.cs
- ControlType.cs