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
- OutputCacheSettingsSection.cs
- CapabilitiesRule.cs
- HandlerFactoryWrapper.cs
- ManifestResourceInfo.cs
- JsonStringDataContract.cs
- DeviceFilterEditorDialog.cs
- HtmlWindow.cs
- TraceSource.cs
- DiscoveryDocumentSearchPattern.cs
- SessionStateModule.cs
- XmlSchemaParticle.cs
- HMACSHA1.cs
- SqlNamer.cs
- formatter.cs
- LoginStatusDesigner.cs
- Span.cs
- ValidationHelper.cs
- GroupBoxRenderer.cs
- EmptyStringExpandableObjectConverter.cs
- OdbcParameter.cs
- LambdaCompiler.Unary.cs
- SamlEvidence.cs
- ErrorEventArgs.cs
- LocatorBase.cs
- EpmTargetPathSegment.cs
- StorageAssociationSetMapping.cs
- KnownTypes.cs
- WebControl.cs
- WebUtility.cs
- EdmSchemaAttribute.cs
- ClrProviderManifest.cs
- XAMLParseException.cs
- RelationshipNavigation.cs
- SectionUpdates.cs
- FunctionImportElement.cs
- DomNameTable.cs
- UnaryQueryOperator.cs
- CollectionBase.cs
- HyperLinkStyle.cs
- Types.cs
- ActivatedMessageQueue.cs
- XmlChoiceIdentifierAttribute.cs
- ProcessHostConfigUtils.cs
- ImageSource.cs
- AuthenticationService.cs
- XmlWrappingWriter.cs
- EpmHelper.cs
- ProviderConnectionPointCollection.cs
- SweepDirectionValidation.cs
- securitymgrsite.cs
- SqlLiftWhereClauses.cs
- DefaultObjectMappingItemCollection.cs
- FormViewUpdateEventArgs.cs
- CellLabel.cs
- localization.cs
- NextPreviousPagerField.cs
- TemplateParser.cs
- PrintPreviewDialog.cs
- BitmapCodecInfoInternal.cs
- MatrixConverter.cs
- RotateTransform3D.cs
- Assert.cs
- cookie.cs
- ServiceCredentials.cs
- HebrewNumber.cs
- linebase.cs
- ParameterModifier.cs
- FileInfo.cs
- TwoPhaseCommitProxy.cs
- WizardPanel.cs
- DefaultValueTypeConverter.cs
- safelinkcollection.cs
- LocalValueEnumerator.cs
- ConnectionPool.cs
- Debugger.cs
- SymmetricKey.cs
- WindowsMenu.cs
- DelegateBodyWriter.cs
- IgnorePropertiesAttribute.cs
- HtmlTable.cs
- SqlBulkCopyColumnMapping.cs
- grammarelement.cs
- TableColumn.cs
- NonClientArea.cs
- FileNotFoundException.cs
- GenerateScriptTypeAttribute.cs
- ConnectionPoint.cs
- ToolStripDropDownButton.cs
- SspiSecurityTokenProvider.cs
- CollectionsUtil.cs
- ListViewTableRow.cs
- QilChoice.cs
- SchemaTableOptionalColumn.cs
- HtmlInputButton.cs
- ColorBlend.cs
- PenThreadWorker.cs
- Rect.cs
- DelegatedStream.cs
- RichTextBoxDesigner.cs
- TextRunCacheImp.cs