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
- ReadOnlyTernaryTree.cs
- Matrix.cs
- PassportAuthenticationModule.cs
- NamespaceCollection.cs
- BlurBitmapEffect.cs
- RotateTransform.cs
- Clock.cs
- BamlStream.cs
- DrawingGroup.cs
- ModelTreeEnumerator.cs
- BuiltInExpr.cs
- AttributeProviderAttribute.cs
- ConditionalAttribute.cs
- DesignerLinkAdapter.cs
- ByteAnimationBase.cs
- EtwProvider.cs
- SpotLight.cs
- StrokeFIndices.cs
- Int32Collection.cs
- PagesSection.cs
- SQLBinaryStorage.cs
- Tag.cs
- HierarchicalDataBoundControlAdapter.cs
- Point4D.cs
- PreviewPrintController.cs
- UseLicense.cs
- XPathParser.cs
- InputScope.cs
- DeleteHelper.cs
- FormsAuthenticationModule.cs
- NestedContainer.cs
- PackageDigitalSignature.cs
- HijriCalendar.cs
- BuildProviderAppliesToAttribute.cs
- OutputCacheProfile.cs
- DataServiceClientException.cs
- SqlServices.cs
- SharedUtils.cs
- Utils.cs
- UITypeEditors.cs
- BindingCompleteEventArgs.cs
- Crc32Helper.cs
- SqlNotificationEventArgs.cs
- _NTAuthentication.cs
- VersionedStream.cs
- PenThread.cs
- MsmqAuthenticationMode.cs
- TextDecorationCollection.cs
- HtmlFormAdapter.cs
- TypeForwardedFromAttribute.cs
- ArrayWithOffset.cs
- RegexGroup.cs
- MenuItemStyleCollection.cs
- InteropEnvironment.cs
- DiscoveryClientProtocol.cs
- OpCodes.cs
- FillBehavior.cs
- HtmlInputReset.cs
- InputScopeManager.cs
- Trigger.cs
- BamlLocalizableResourceKey.cs
- ToolBar.cs
- _LocalDataStore.cs
- InstanceDataCollectionCollection.cs
- AdapterUtil.cs
- XPathSelectionIterator.cs
- RemotingException.cs
- Terminate.cs
- ControllableStoryboardAction.cs
- DataGridViewButtonColumn.cs
- UnsafePeerToPeerMethods.cs
- ClientData.cs
- WorkflowRequestContext.cs
- FixedFlowMap.cs
- NamedPipeTransportElement.cs
- Underline.cs
- DataSourceXmlAttributeAttribute.cs
- TokenizerHelper.cs
- MobileFormsAuthentication.cs
- DataObjectPastingEventArgs.cs
- CopyAttributesAction.cs
- SqlClientMetaDataCollectionNames.cs
- NamespaceExpr.cs
- ReadContentAsBinaryHelper.cs
- ProxyWebPartManager.cs
- ItemCollectionEditor.cs
- UpdateInfo.cs
- EntitySqlQueryState.cs
- Bits.cs
- RtfFormatStack.cs
- SharedDp.cs
- CatalogPartCollection.cs
- Action.cs
- Thickness.cs
- xamlnodes.cs
- DisplayInformation.cs
- DataGridLinkButton.cs
- IPEndPoint.cs
- OrderedDictionaryStateHelper.cs
- UserControl.cs