Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / UIAutomation / 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 : BrendanM 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.
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
//
// Description: Client-side wrapper for Table Pattern
//
// History:
// 06/23/2003 : BrendanM 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
- X509KeyIdentifierClauseType.cs
- ContentFilePart.cs
- MobileControlsSection.cs
- LinqDataSourceSelectEventArgs.cs
- UserThread.cs
- ByteStorage.cs
- BufferAllocator.cs
- CssStyleCollection.cs
- PasswordBoxAutomationPeer.cs
- RijndaelManaged.cs
- EpmSourcePathSegment.cs
- ConfigurationSectionGroup.cs
- ToolStripItemCollection.cs
- UnsafeNativeMethodsTablet.cs
- PointLightBase.cs
- BulletChrome.cs
- ToolStripLocationCancelEventArgs.cs
- ResourceExpressionEditor.cs
- TextRangeAdaptor.cs
- BamlResourceContent.cs
- CodeCatchClauseCollection.cs
- BaseTreeIterator.cs
- PermissionListSet.cs
- Geometry.cs
- UnsignedPublishLicense.cs
- XsltArgumentList.cs
- _HeaderInfo.cs
- RoleGroup.cs
- PropertyKey.cs
- CapabilitiesRule.cs
- WeakHashtable.cs
- FormatterConverter.cs
- RayHitTestParameters.cs
- PropertyEntry.cs
- EntityParameter.cs
- StringFunctions.cs
- AudioDeviceOut.cs
- StrongNamePublicKeyBlob.cs
- JulianCalendar.cs
- CorrelationManager.cs
- TypeDefinition.cs
- BitmapMetadata.cs
- DynamicILGenerator.cs
- BaseCodePageEncoding.cs
- EncoderBestFitFallback.cs
- KeyInfo.cs
- WebServiceClientProxyGenerator.cs
- XmlWellformedWriterHelpers.cs
- ProcessThreadCollection.cs
- CustomWebEventKey.cs
- EmptyImpersonationContext.cs
- SoapSchemaImporter.cs
- ExceptionUtil.cs
- SchemaNamespaceManager.cs
- OleDbDataAdapter.cs
- PropertyConverter.cs
- PageRanges.cs
- Msec.cs
- TreeView.cs
- XmlSerializationReader.cs
- UriSectionReader.cs
- EtwTrace.cs
- PocoEntityKeyStrategy.cs
- GroupBox.cs
- ImageClickEventArgs.cs
- PropertyFilterAttribute.cs
- _StreamFramer.cs
- ToolStripPanel.cs
- ServiceModelPerformanceCounters.cs
- PackagePart.cs
- ButtonFlatAdapter.cs
- ValuePatternIdentifiers.cs
- Vector3DConverter.cs
- XmlUrlEditor.cs
- PresentationSource.cs
- SmuggledIUnknown.cs
- COMException.cs
- DomainConstraint.cs
- TemplateEditingService.cs
- PositiveTimeSpanValidator.cs
- BitmapEffectvisualstate.cs
- XmlQueryContext.cs
- CollectionType.cs
- HandlerBase.cs
- OuterGlowBitmapEffect.cs
- DiagnosticsConfigurationHandler.cs
- Privilege.cs
- XmlException.cs
- ArgIterator.cs
- ChannelTracker.cs
- PagesSection.cs
- SiteMapDataSourceView.cs
- SoapSchemaMember.cs
- XamlPoint3DCollectionSerializer.cs
- UnicastIPAddressInformationCollection.cs
- RectKeyFrameCollection.cs
- VisualStateManager.cs
- RotateTransform3D.cs
- TextOutput.cs
- ToolStripContainerDesigner.cs