Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Automation / Peers / DocumentViewerBaseAutomationPeer.cs / 1305600 / DocumentViewerBaseAutomationPeer.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // File: DocumentViewerBaseAutomationPeer.cs // // Description: AutomationPeer associated with DocumentViewerBase. // //--------------------------------------------------------------------------- using System.Collections.Generic; // Listusing System.Windows.Controls.Primitives; // DocumentViewerBase using System.Windows.Documents; // IDocumentPaginatorSource namespace System.Windows.Automation.Peers { /// /// AutomationPeer associated with DocumentViewerBase. /// public class DocumentViewerBaseAutomationPeer : FrameworkElementAutomationPeer { ////// Constructor. /// /// Owner of the AutomationPeer. public DocumentViewerBaseAutomationPeer(DocumentViewerBase owner) : base(owner) { } ////// public override object GetPattern(PatternInterface patternInterface) { object returnValue = null; if (patternInterface == PatternInterface.Text) { // Make sure that Automation children are created. this.GetChildren(); // Re-expose TextPattern from hosted document. if (_documentPeer != null) { _documentPeer.EventsSource = this; returnValue = _documentPeer.GetPattern(patternInterface); } } else { returnValue = base.GetPattern(patternInterface); } return returnValue; } ////// /// ////// /// AutomationPeer associated with DocumentViewerBase returns an AutomationPeer /// for hosted Document and for elements in the style. /// protected override ListGetChildrenCore() { // Get children for all elements in the style. List children = base.GetChildrenCore(); // Add AutomationPeer associated with the document. // Make it the first child of the collection. AutomationPeer documentPeer = GetDocumentAutomationPeer(); if (_documentPeer != documentPeer) { if (_documentPeer != null) { _documentPeer.OnDisconnected(); } _documentPeer = documentPeer as DocumentAutomationPeer; } if (documentPeer != null) { if (children == null) { children = new List (); } children.Add(documentPeer); } return children; } /// /// protected override AutomationControlType GetAutomationControlTypeCore() { return AutomationControlType.Document; } ////// /// protected override string GetClassNameCore() { return "DocumentViewer"; } ////// /// Retrieves AutomationPeer for the document. /// ///private AutomationPeer GetDocumentAutomationPeer() { AutomationPeer documentPeer = null; IDocumentPaginatorSource document = ((DocumentViewerBase)Owner).Document; if (document != null) { if (document is UIElement) { documentPeer = UIElementAutomationPeer.CreatePeerForElement((UIElement)document); } else if (document is ContentElement) { documentPeer = ContentElementAutomationPeer.CreatePeerForElement((ContentElement)document); } } return documentPeer; } private DocumentAutomationPeer _documentPeer; } } // 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
- WebEncodingValidatorAttribute.cs
- ObjectAnimationBase.cs
- EnumType.cs
- TimeStampChecker.cs
- TextBox.cs
- _ListenerRequestStream.cs
- ControlBuilderAttribute.cs
- DataServiceEntityAttribute.cs
- Transform3DCollection.cs
- ProjectionAnalyzer.cs
- MediaSystem.cs
- DetailsViewRow.cs
- ViewService.cs
- DataConnectionHelper.cs
- CodeArrayCreateExpression.cs
- ComNativeDescriptor.cs
- SqlUtil.cs
- TreeViewEvent.cs
- AspCompat.cs
- WebBrowserPermission.cs
- StringWriter.cs
- PathData.cs
- TypeReference.cs
- Trace.cs
- AssemblyInfo.cs
- XXXInfos.cs
- TimeZone.cs
- ListViewGroupConverter.cs
- SafeRightsManagementEnvironmentHandle.cs
- ActivityDesignerAccessibleObject.cs
- OrthographicCamera.cs
- CorrelationQueryBehavior.cs
- DoubleStorage.cs
- GenericsInstances.cs
- AdRotator.cs
- Baml2006SchemaContext.cs
- TypeUtils.cs
- RegisteredDisposeScript.cs
- EntityViewGenerator.cs
- AccessKeyManager.cs
- ListViewCommandEventArgs.cs
- FormsAuthenticationCredentials.cs
- AccessorTable.cs
- FontDialog.cs
- EntityModelBuildProvider.cs
- WebPartTransformerAttribute.cs
- HtmlContainerControl.cs
- NativeMethods.cs
- MouseEventArgs.cs
- DBConnectionString.cs
- IndexedDataBuffer.cs
- Missing.cs
- EventDescriptor.cs
- DetailsViewCommandEventArgs.cs
- FillRuleValidation.cs
- WebPartConnectionsDisconnectVerb.cs
- ComponentChangedEvent.cs
- ConnectionStringSettings.cs
- InheritedPropertyDescriptor.cs
- UnsafeNativeMethods.cs
- FullTextLine.cs
- MessageHeaderAttribute.cs
- BoundColumn.cs
- XPathDocumentIterator.cs
- NativeWindow.cs
- BaseValidator.cs
- UnsafeNativeMethods.cs
- BufferedStream.cs
- CatalogPartChrome.cs
- QueryCoreOp.cs
- ArgumentDirectionHelper.cs
- CodeArrayIndexerExpression.cs
- InvokeProviderWrapper.cs
- ParserExtension.cs
- CmsUtils.cs
- XsltOutput.cs
- SystemColors.cs
- TextBox.cs
- Matrix.cs
- SrgsText.cs
- Msmq4PoisonHandler.cs
- PersistChildrenAttribute.cs
- TdsParserSessionPool.cs
- ellipse.cs
- SpecialTypeDataContract.cs
- ToolStripDropDownItemDesigner.cs
- LookupNode.cs
- XmlHierarchicalEnumerable.cs
- _ServiceNameStore.cs
- TextSimpleMarkerProperties.cs
- COM2PropertyDescriptor.cs
- DataPagerCommandEventArgs.cs
- Splitter.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- TraceContext.cs
- PartialCachingAttribute.cs
- InfoCardSymmetricCrypto.cs
- StylusTouchDevice.cs
- ManipulationCompletedEventArgs.cs
- OutputCacheProfileCollection.cs