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
- EnumerationRangeValidationUtil.cs
- ConfigXmlText.cs
- FreezableDefaultValueFactory.cs
- StreamHelper.cs
- InvokeHandlers.cs
- DbUpdateCommandTree.cs
- WsatServiceCertificate.cs
- TextTreeTextBlock.cs
- FamilyTypefaceCollection.cs
- NativeRecognizer.cs
- TextViewSelectionProcessor.cs
- GenericParameterDataContract.cs
- UIElement3DAutomationPeer.cs
- DataControlFieldHeaderCell.cs
- DbMetaDataFactory.cs
- ListSortDescriptionCollection.cs
- CustomCredentialPolicy.cs
- XPathDocumentNavigator.cs
- Transform3DGroup.cs
- ClosableStream.cs
- SqlTrackingQuery.cs
- DataColumnChangeEvent.cs
- MaskedTextProvider.cs
- WmlSelectionListAdapter.cs
- EventLogPermission.cs
- XmlSchemaType.cs
- WindowProviderWrapper.cs
- DataObjectMethodAttribute.cs
- StringBuilder.cs
- SecurityTokenException.cs
- TreePrinter.cs
- SafeLocalMemHandle.cs
- ContractMapping.cs
- GZipDecoder.cs
- SqlBooleanizer.cs
- LambdaCompiler.Statements.cs
- RootProjectionNode.cs
- SqlWriter.cs
- IntPtr.cs
- DeviceFiltersSection.cs
- FormDesigner.cs
- TypeCollectionPropertyEditor.cs
- FixedDocumentPaginator.cs
- TextFindEngine.cs
- NetCodeGroup.cs
- SqlRewriteScalarSubqueries.cs
- __Filters.cs
- DataSourceView.cs
- RoutingBehavior.cs
- SymbolType.cs
- GridViewRowPresenter.cs
- ProxyWebPart.cs
- MethodRental.cs
- Translator.cs
- DebugView.cs
- CheckBoxList.cs
- UriTemplate.cs
- CatalogZoneAutoFormat.cs
- OperationParameterInfoCollection.cs
- ExpressionBuilderContext.cs
- FixedPageStructure.cs
- StorageInfo.cs
- DataObject.cs
- LocalizabilityAttribute.cs
- BypassElementCollection.cs
- MailAddress.cs
- BitmapEffectGeneralTransform.cs
- CodeMethodMap.cs
- DesignerWidgets.cs
- DiscriminatorMap.cs
- NetworkAddressChange.cs
- SqlBooleanizer.cs
- HandlerFactoryCache.cs
- WriteTimeStream.cs
- Line.cs
- GridViewCancelEditEventArgs.cs
- InkSerializer.cs
- TraceUtils.cs
- TransformerInfo.cs
- QueryGeneratorBase.cs
- Transform3D.cs
- BaseValidator.cs
- Expander.cs
- DataErrorValidationRule.cs
- EntitySetBase.cs
- SystemResources.cs
- SchemaRegistration.cs
- DocumentApplicationDocumentViewer.cs
- XmlDataCollection.cs
- EventManager.cs
- RegexStringValidator.cs
- XpsTokenContext.cs
- BamlBinaryWriter.cs
- DataSetMappper.cs
- CommandHelpers.cs
- PolicyLevel.cs
- TextRunTypographyProperties.cs
- IisTraceWebEventProvider.cs
- SmtpLoginAuthenticationModule.cs
- XmlSchemaSimpleTypeRestriction.cs