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
![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
- EditBehavior.cs
- ConnectionConsumerAttribute.cs
- CodeTypeReference.cs
- PageAsyncTask.cs
- InputLangChangeEvent.cs
- RotateTransform3D.cs
- ResourcePermissionBase.cs
- Message.cs
- NCryptNative.cs
- XmlnsDictionary.cs
- SQLByteStorage.cs
- ASCIIEncoding.cs
- DrawingContextDrawingContextWalker.cs
- Attributes.cs
- IssuanceTokenProviderBase.cs
- FileIOPermission.cs
- DispatchWrapper.cs
- Validator.cs
- WebPartTransformerCollection.cs
- InheritedPropertyDescriptor.cs
- SoapMessage.cs
- TraceLevelHelper.cs
- SystemColors.cs
- oledbmetadatacolumnnames.cs
- SortAction.cs
- Point3DKeyFrameCollection.cs
- XmlSchemaExternal.cs
- InputLangChangeEvent.cs
- UnitySerializationHolder.cs
- HttpModuleActionCollection.cs
- Socket.cs
- XmlStringTable.cs
- UIElementHelper.cs
- ToolStripDropDownMenu.cs
- WindowsSlider.cs
- COM2ComponentEditor.cs
- TypeInfo.cs
- NetTcpSecurityElement.cs
- XmlSchemaRedefine.cs
- SqlConnectionPoolProviderInfo.cs
- SQLDouble.cs
- SqlTypeConverter.cs
- TypeSystem.cs
- HtmlInputCheckBox.cs
- FrameworkRichTextComposition.cs
- PeerContact.cs
- MenuTracker.cs
- MediaScriptCommandRoutedEventArgs.cs
- DataGridViewRowStateChangedEventArgs.cs
- Model3DGroup.cs
- SQLInt16Storage.cs
- MultiTouchSystemGestureLogic.cs
- Certificate.cs
- PropertyDescriptorGridEntry.cs
- ExpandCollapseIsCheckedConverter.cs
- Win32.cs
- DataColumnPropertyDescriptor.cs
- StaticFileHandler.cs
- Size3D.cs
- KeyboardEventArgs.cs
- CustomPopupPlacement.cs
- Vertex.cs
- ScrollBarRenderer.cs
- ReadOnlyDictionary.cs
- DataGridColumnStyleMappingNameEditor.cs
- mda.cs
- KeyGestureConverter.cs
- ScrollItemPatternIdentifiers.cs
- WorkItem.cs
- DataGridViewSelectedRowCollection.cs
- MetadataSerializer.cs
- CleanUpVirtualizedItemEventArgs.cs
- TrackingServices.cs
- ImageFormat.cs
- DayRenderEvent.cs
- XmlQueryContext.cs
- EmptyControlCollection.cs
- NameValuePair.cs
- DiagnosticEventProvider.cs
- MetafileHeader.cs
- RequestQueue.cs
- SqlAliasesReferenced.cs
- OdbcStatementHandle.cs
- ItemType.cs
- TraceRecord.cs
- ObfuscateAssemblyAttribute.cs
- DataGridColumnCollection.cs
- SspiSafeHandles.cs
- ObjectCloneHelper.cs
- ProfileManager.cs
- ConnectionProviderAttribute.cs
- SystemWebExtensionsSectionGroup.cs
- RotateTransform3D.cs
- Fonts.cs
- DataGridViewCellMouseEventArgs.cs
- CharUnicodeInfo.cs
- ThumbButtonInfo.cs
- TextParaLineResult.cs
- PersistenceException.cs
- Window.cs