Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / AccessibleTech / longhorn / Automation / UIAutomationClient / System / Windows / Automation / TablePattern.cs / 1 / TablePattern.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: Client-side wrapper for Table Pattern // // History: // 06/23/2003 : [....] Ported to WCP // //--------------------------------------------------------------------------- using System; using System.Windows.Automation.Provider; using MS.Internal.Automation; namespace System.Windows.Automation { ////// Identifies a grid that has header information. /// #if (INTERNAL_COMPILE) internal class TablePattern: GridPattern #else public class TablePattern: GridPattern #endif { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors private TablePattern(AutomationElement el, SafePatternHandle hPattern, bool cached) : base(el, hPattern, cached) { // Done } #endregion Constructors //------------------------------------------------------ // // Public Constants / Readonly Fields // //----------------------------------------------------- #region Public Constants and Readonly Fields ///Table pattern public static readonly new AutomationPattern Pattern = TablePatternIdentifiers.Pattern; ///Property ID: RowHeaders - Collection of all row headers for this table public static readonly AutomationProperty RowHeadersProperty = TablePatternIdentifiers.RowHeadersProperty; ///Property ID: ColumnHeaders - Collection of all column headers for this table public static readonly AutomationProperty ColumnHeadersProperty = TablePatternIdentifiers.ColumnHeadersProperty; ///Property ID: RowOrColumnMajor - Indicates if the data is best presented by row or column public static readonly AutomationProperty RowOrColumnMajorProperty = TablePatternIdentifiers.RowOrColumnMajorProperty; #endregion Public Constants and Readonly Fields //------------------------------------------------------ // // Public Properties // //------------------------------------------------------ #region Public Properties ////// This member allows access to previously requested /// cached properties for this element. The returned object /// has accessors for each property defined for this pattern. /// ////// Cached property values must have been previously requested /// using a CacheRequest. If you try to access a cached /// property that was not previously requested, an InvalidOperation /// Exception will be thrown. /// /// To get the value of a property at the current point in time, /// access the property via the Current accessor instead of /// Cached. /// new public TablePatternInformation Cached { get { Misc.ValidateCached(_cached); return new TablePatternInformation(_el, true); } } ////// This member allows access to current property values /// for this element. The returned object has accessors for /// each property defined for this pattern. /// ////// This pattern must be from an AutomationElement with a /// Full reference in order to get current values. If the /// AutomationElement was obtained using AutomationElementMode.None, /// then it contains only cached data, and attempting to get /// the current value of any property will throw an InvalidOperationException. /// /// To get the cached value of a property that was previously /// specified using a CacheRequest, access the property via the /// Cached accessor instead of Current. /// new public TablePatternInformation Current { get { Misc.ValidateCurrent(_hPattern); return new TablePatternInformation(_el, false); } } #endregion Public Properties //----------------------------------------------------- // // Internal Methods // //------------------------------------------------------ #region Internal Methods internal static new object Wrap(AutomationElement el, SafePatternHandle hPattern, bool cached) { return new TablePattern(el, hPattern, cached); } #endregion Internal Methods //----------------------------------------------------- // // Private Fields // //----------------------------------------------------- #region Private Fields // No new fields needed here - we use those inherited from base class #endregion Private Fields //----------------------------------------------------- // // Nested Classes // //------------------------------------------------------ #region Nested Classes ////// This class provides access to either Cached or Current /// properties on a pattern via the pattern's .Cached or /// .Current accessors. /// public struct TablePatternInformation { //----------------------------------------------------- // // Constructors // //------------------------------------------------------ #region Constructors internal TablePatternInformation(AutomationElement el, bool useCache) { _el = el; _useCache = useCache; } #endregion Constructors //------------------------------------------------------ // // Public Properties // //----------------------------------------------------- #region Public Properties ///Collection of all row headers for this table /// ////// This API does not work inside the secure execution environment. /// public AutomationElement[] GetRowHeaders() { return (AutomationElement[])_el.GetPatternPropertyValue(RowHeadersProperty, _useCache); } ////// Collection of all column headers for this table /// ////// This API does not work inside the secure execution environment. /// public AutomationElement[] GetColumnHeaders() { return (AutomationElement[])_el.GetPatternPropertyValue(ColumnHeadersProperty, _useCache); } ////// /// number of rows in the grid /// /// ////// This API does not work inside the secure execution environment. /// public int RowCount { get { return (int)_el.GetPatternPropertyValue(RowCountProperty, _useCache); } } ////// /// number of columns in the grid /// /// ////// This API does not work inside the secure execution environment. /// public int ColumnCount { get { return (int)_el.GetPatternPropertyValue(ColumnCountProperty, _useCache); } } ////// Indicates if the data is best presented by row or column /// ////// This API does not work inside the secure execution environment. /// public RowOrColumnMajor RowOrColumnMajor { get { return (RowOrColumnMajor)_el.GetPatternPropertyValue(RowOrColumnMajorProperty, _useCache); } } #endregion Public Properties //------------------------------------------------------ // // Private Fields // //----------------------------------------------------- #region Private Fields private AutomationElement _el; // AutomationElement that contains the cache or live reference private bool _useCache; // true to use cache, false to use live reference to get current values #endregion Private Fields } #endregion Nested Classes } } // 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
- SafeMarshalContext.cs
- GeneralTransform2DTo3DTo2D.cs
- WebPartDisplayModeCollection.cs
- IIS7WorkerRequest.cs
- UInt64Converter.cs
- TextEditorContextMenu.cs
- TdsValueSetter.cs
- DrawToolTipEventArgs.cs
- XmlDataDocument.cs
- TextEditorCopyPaste.cs
- SR.cs
- BrowserCapabilitiesCompiler.cs
- MsmqAppDomainProtocolHandler.cs
- SynchronizationLockException.cs
- XmlComplianceUtil.cs
- RefreshPropertiesAttribute.cs
- MenuItemStyleCollection.cs
- Attributes.cs
- SByte.cs
- ContentFileHelper.cs
- IdentifierCollection.cs
- DbConnectionPool.cs
- SqlProviderUtilities.cs
- SelectedDatesCollection.cs
- CodeRemoveEventStatement.cs
- StandardBindingElementCollection.cs
- ISO2022Encoding.cs
- MessageQueuePermission.cs
- ProxyFragment.cs
- XComponentModel.cs
- ResXBuildProvider.cs
- PropertyInfo.cs
- ProxyElement.cs
- LabelInfo.cs
- ResourceExpressionBuilder.cs
- IPPacketInformation.cs
- RenamedEventArgs.cs
- ToolStripPanelCell.cs
- XmlSequenceWriter.cs
- IPGlobalProperties.cs
- EntityDataSourceColumn.cs
- SQLByteStorage.cs
- OlePropertyStructs.cs
- Evidence.cs
- Msmq.cs
- CodeComment.cs
- WorkflowRuntimeServicesBehavior.cs
- AdapterUtil.cs
- ReliableMessagingVersion.cs
- DataStreams.cs
- SchemaElementDecl.cs
- ChannelEndpointElement.cs
- QilInvoke.cs
- GraphicsPathIterator.cs
- TrustManager.cs
- Themes.cs
- PasswordBoxAutomationPeer.cs
- NavigationProperty.cs
- ActiveXSite.cs
- Input.cs
- Margins.cs
- StyleConverter.cs
- MessageQueueTransaction.cs
- DependencyPropertyValueSerializer.cs
- GreenMethods.cs
- EditBehavior.cs
- IPGlobalProperties.cs
- DataColumnCollection.cs
- XmlDocumentSchema.cs
- SymmetricSecurityBindingElement.cs
- IgnoreFlushAndCloseStream.cs
- D3DImage.cs
- RequestSecurityTokenForGetBrowserToken.cs
- DeclaredTypeElement.cs
- CompilationLock.cs
- TrackPointCollection.cs
- BackStopAuthenticationModule.cs
- AttachedPropertiesService.cs
- XmlNullResolver.cs
- ScrollContentPresenter.cs
- PassportIdentity.cs
- DoubleCollection.cs
- EntityRecordInfo.cs
- WindowsListViewGroup.cs
- DbDataReader.cs
- RadioButtonRenderer.cs
- DataIdProcessor.cs
- ComPlusTraceRecord.cs
- MouseDevice.cs
- Window.cs
- CardSpaceShim.cs
- AnnotationAdorner.cs
- XPathParser.cs
- TerminateDesigner.cs
- ScrollItemProviderWrapper.cs
- PenContext.cs
- Route.cs
- PropertyEmitter.cs
- RectIndependentAnimationStorage.cs
- UrlMapping.cs