Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Automation / Peers / RichTextBoxAutomationPeer.cs / 1305600 / RichTextBoxAutomationPeer.cs
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using System.Security;
using System.Text;
using System.Windows;
using System.Windows.Automation.Provider;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Interop;
using System.Windows.Media;
using MS.Internal.Documents;
using MS.Internal;
using MS.Internal.Automation;
using MS.Win32;
namespace System.Windows.Automation.Peers
{
///
public class RichTextBoxAutomationPeer : TextAutomationPeer
{
///
public RichTextBoxAutomationPeer(RichTextBox owner): base(owner)
{
_textPattern = new TextAdaptor(this, owner.TextContainer);
}
///
override protected string GetClassNameCore()
{
return "RichTextBox";
}
///
override protected AutomationControlType GetAutomationControlTypeCore()
{
return AutomationControlType.Document;
}
///
override public object GetPattern(PatternInterface patternInterface)
{
object returnValue = null;
RichTextBox owner = (RichTextBox)Owner;
if (patternInterface == PatternInterface.Text)
{
if (_textPattern == null)
_textPattern = new TextAdaptor(this, owner.TextContainer);
return _textPattern;
}
else
{
if (patternInterface == PatternInterface.Scroll)
{
if (owner.ScrollViewer != null)
{
returnValue = owner.ScrollViewer.CreateAutomationPeer();
((AutomationPeer)returnValue).EventsSource = this;
}
}
else
{
returnValue = base.GetPattern(patternInterface);
}
}
return returnValue;
}
///
///
///
protected override List GetChildrenCore()
{
RichTextBox owner = (RichTextBox)Owner;
return TextContainerHelper.GetAutomationPeersFromRange(owner.TextContainer.Start, owner.TextContainer.End, null);
}
///
/// Gets collection of AutomationPeers for given text range.
///
internal override List GetAutomationPeersFromRange(ITextPointer start, ITextPointer end)
{
// Force children connection to automation tree.
GetChildren();
RichTextBox owner = (RichTextBox)Owner;
return TextContainerHelper.GetAutomationPeersFromRange(start, end, owner.TextContainer.Start);
}
private TextAdaptor _textPattern;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using System.Security;
using System.Text;
using System.Windows;
using System.Windows.Automation.Provider;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Interop;
using System.Windows.Media;
using MS.Internal.Documents;
using MS.Internal;
using MS.Internal.Automation;
using MS.Win32;
namespace System.Windows.Automation.Peers
{
///
public class RichTextBoxAutomationPeer : TextAutomationPeer
{
///
public RichTextBoxAutomationPeer(RichTextBox owner): base(owner)
{
_textPattern = new TextAdaptor(this, owner.TextContainer);
}
///
override protected string GetClassNameCore()
{
return "RichTextBox";
}
///
override protected AutomationControlType GetAutomationControlTypeCore()
{
return AutomationControlType.Document;
}
///
override public object GetPattern(PatternInterface patternInterface)
{
object returnValue = null;
RichTextBox owner = (RichTextBox)Owner;
if (patternInterface == PatternInterface.Text)
{
if (_textPattern == null)
_textPattern = new TextAdaptor(this, owner.TextContainer);
return _textPattern;
}
else
{
if (patternInterface == PatternInterface.Scroll)
{
if (owner.ScrollViewer != null)
{
returnValue = owner.ScrollViewer.CreateAutomationPeer();
((AutomationPeer)returnValue).EventsSource = this;
}
}
else
{
returnValue = base.GetPattern(patternInterface);
}
}
return returnValue;
}
///
///
///
protected override List GetChildrenCore()
{
RichTextBox owner = (RichTextBox)Owner;
return TextContainerHelper.GetAutomationPeersFromRange(owner.TextContainer.Start, owner.TextContainer.End, null);
}
///
/// Gets collection of AutomationPeers for given text range.
///
internal override List GetAutomationPeersFromRange(ITextPointer start, ITextPointer end)
{
// Force children connection to automation tree.
GetChildren();
RichTextBox owner = (RichTextBox)Owner;
return TextContainerHelper.GetAutomationPeersFromRange(start, end, owner.TextContainer.Start);
}
private TextAdaptor _textPattern;
}
}
// 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
- ValidationSummary.cs
- MouseCaptureWithinProperty.cs
- CodeConstructor.cs
- WindowsGraphics2.cs
- TextCharacters.cs
- EntryWrittenEventArgs.cs
- FlowDocumentFormatter.cs
- RadioButton.cs
- PinnedBufferMemoryStream.cs
- WebBrowserEvent.cs
- EncoderFallback.cs
- CommandLibraryHelper.cs
- DateTimeStorage.cs
- SqlServer2KCompatibilityCheck.cs
- ParentUndoUnit.cs
- ManipulationDeltaEventArgs.cs
- MergePropertyDescriptor.cs
- ListenerAdaptersInstallComponent.cs
- DbXmlEnabledProviderManifest.cs
- PropertyStore.cs
- EventLogTraceListener.cs
- RSACryptoServiceProvider.cs
- TrackingStringDictionary.cs
- EditorZone.cs
- ObjectViewFactory.cs
- NullRuntimeConfig.cs
- AdornerDecorator.cs
- DataGridState.cs
- ExpandCollapsePattern.cs
- XmlObjectSerializer.cs
- XmlSchemaSimpleContentExtension.cs
- ObjectDataSourceDesigner.cs
- SelectionEditor.cs
- RolePrincipal.cs
- DataMemberConverter.cs
- NameValueConfigurationCollection.cs
- IChannel.cs
- ImportContext.cs
- TypeUtil.cs
- DataGridViewImageCell.cs
- sitestring.cs
- TypeReference.cs
- BamlRecords.cs
- InputReferenceExpression.cs
- MaskedTextProvider.cs
- RewritingProcessor.cs
- OdbcInfoMessageEvent.cs
- DataGridViewTextBoxColumn.cs
- RoleServiceManager.cs
- XmlCharacterData.cs
- ConditionalBranch.cs
- BooleanStorage.cs
- Set.cs
- ContextMenu.cs
- NullableLongSumAggregationOperator.cs
- WorkflowQueueInfo.cs
- PeerApplication.cs
- TextEditorContextMenu.cs
- ThreadExceptionDialog.cs
- InputLanguage.cs
- IDictionary.cs
- NaturalLanguageHyphenator.cs
- ReadWriteSpinLock.cs
- BitmapEffectDrawing.cs
- HGlobalSafeHandle.cs
- GeneralTransform3DCollection.cs
- HttpListenerPrefixCollection.cs
- CheckBoxDesigner.cs
- WebAdminConfigurationHelper.cs
- XhtmlBasicControlAdapter.cs
- ActivityPreviewDesigner.cs
- HttpProtocolReflector.cs
- DataControlFieldCollection.cs
- TitleStyle.cs
- WebZone.cs
- Calendar.cs
- ObjectDataSourceFilteringEventArgs.cs
- MetadataItemSerializer.cs
- ClientSideQueueItem.cs
- RunInstallerAttribute.cs
- WorkflowViewStateService.cs
- DrawingAttributes.cs
- Color.cs
- OrderPreservingPipeliningMergeHelper.cs
- ConsumerConnectionPointCollection.cs
- Debug.cs
- Error.cs
- XsdBuildProvider.cs
- ToolTip.cs
- UIElementCollection.cs
- DbDataRecord.cs
- EventlogProvider.cs
- ToolStripInSituService.cs
- PrimitiveXmlSerializers.cs
- WpfXamlMember.cs
- BitmapEffectvisualstate.cs
- SectionRecord.cs
- ActivationServices.cs
- Deserializer.cs
- Int32RectValueSerializer.cs