Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / WinForms / Managed / System / WinForms / DataGridViewTopRowAccessibleObject.cs / 1305376 / DataGridViewTopRowAccessibleObject.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System.Security.Permissions; using System.Drawing; using System.Diagnostics; namespace System.Windows.Forms { public partial class DataGridView { ///[ System.Runtime.InteropServices.ComVisible(true) ] protected class DataGridViewTopRowAccessibleObject : AccessibleObject { DataGridView owner; /// public DataGridViewTopRowAccessibleObject() : base() { } /// public DataGridViewTopRowAccessibleObject(DataGridView owner) : base() { this.owner = owner; } /// public override Rectangle Bounds { get { if (this.owner == null) { throw new InvalidOperationException(SR.GetString(SR.DataGridViewTopRowAccessibleObject_OwnerNotSet)); } if (this.owner.ColumnHeadersVisible) { Rectangle rect = Rectangle.Union(this.owner.layout.ColumnHeaders, this.owner.layout.TopLeftHeader); return this.owner.RectangleToScreen(rect); } else { return Rectangle.Empty; } } } /// public override string Name { get { return SR.GetString(SR.DataGridView_AccTopRow); } } /// public DataGridView Owner { get { return this.owner; } set { if (this.owner != null) { throw new InvalidOperationException(SR.GetString(SR.DataGridViewTopRowAccessibleObject_OwnerAlreadySet)); } this.owner = value; } } /// public override AccessibleObject Parent { [SecurityPermission(SecurityAction.Demand, Flags = SecurityPermissionFlag.UnmanagedCode)] get { if (this.owner == null) { throw new InvalidOperationException(SR.GetString(SR.DataGridViewTopRowAccessibleObject_OwnerNotSet)); } return this.owner.AccessibilityObject; } } /// public override AccessibleRole Role { get { return AccessibleRole.Row; } } /// public override string Value { [SecurityPermission(SecurityAction.Demand, Flags = SecurityPermissionFlag.UnmanagedCode)] get { return this.Name; } } /// public override AccessibleObject GetChild(int index) { if (this.owner == null) { throw new InvalidOperationException(SR.GetString(SR.DataGridViewTopRowAccessibleObject_OwnerNotSet)); } if (index < 0) { throw new ArgumentOutOfRangeException("index"); } if (index == 0 && this.owner.RowHeadersVisible) { return this.owner.TopLeftHeaderCell.AccessibilityObject; } if (this.owner.RowHeadersVisible) { // decrement the index because the first child is the top left header cell index --; } Debug.Assert(index >= 0); if (index < this.owner.Columns.GetColumnCount(DataGridViewElementStates.Visible)) { int actualColumnIndex = this.owner.Columns.ActualDisplayIndexToColumnIndex(index, DataGridViewElementStates.Visible); return this.owner.Columns[actualColumnIndex].HeaderCell.AccessibilityObject; } else { return null; } } /// public override int GetChildCount() { if (this.owner == null) { throw new InvalidOperationException(SR.GetString(SR.DataGridViewTopRowAccessibleObject_OwnerNotSet)); } int result = this.owner.Columns.GetColumnCount(DataGridViewElementStates.Visible); if (this.owner.RowHeadersVisible) { // + 1 is the top left header cell accessibility object result ++; } return result; } /// [SecurityPermission(SecurityAction.Demand, Flags = SecurityPermissionFlag.UnmanagedCode)] public override AccessibleObject Navigate(AccessibleNavigation navigationDirection) { if (this.owner == null) { throw new InvalidOperationException(SR.GetString(SR.DataGridViewTopRowAccessibleObject_OwnerNotSet)); } switch (navigationDirection) { case AccessibleNavigation.Down: case AccessibleNavigation.Next: if (this.owner.AccessibilityObject.GetChildCount() > 1) { return this.owner.AccessibilityObject.GetChild(1); } else { return null; } case AccessibleNavigation.FirstChild: return this.GetChild(0); case AccessibleNavigation.LastChild: return this.GetChild(this.GetChildCount() - 1); default: return null; } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Style.cs
- EDesignUtil.cs
- JoinElimination.cs
- AsnEncodedData.cs
- UserCancellationException.cs
- TopClause.cs
- IdentitySection.cs
- StsCommunicationException.cs
- IssuanceTokenProviderBase.cs
- WindowsFormsSectionHandler.cs
- QuadraticBezierSegment.cs
- SpanIndex.cs
- EntityContainer.cs
- XmlTypeAttribute.cs
- ConfigurationPermission.cs
- FormatSettings.cs
- ExpressionVisitorHelpers.cs
- URIFormatException.cs
- Query.cs
- TickBar.cs
- TextEmbeddedObject.cs
- MediaPlayerState.cs
- ParagraphResult.cs
- Translator.cs
- ObjectNotFoundException.cs
- TreeBuilder.cs
- TreeViewAutomationPeer.cs
- IDispatchConstantAttribute.cs
- Switch.cs
- DataGridPageChangedEventArgs.cs
- PathGradientBrush.cs
- XmlMemberMapping.cs
- dataprotectionpermissionattribute.cs
- TransformDescriptor.cs
- CaseInsensitiveOrdinalStringComparer.cs
- LogicalCallContext.cs
- XmlSchemaValidator.cs
- BinaryObjectWriter.cs
- ConditionalAttribute.cs
- Typeface.cs
- GridViewAutoFormat.cs
- DashStyle.cs
- MetadataUtilsSmi.cs
- DoubleSumAggregationOperator.cs
- XmlConvert.cs
- TrustSection.cs
- EntityStoreSchemaFilterEntry.cs
- BoundColumn.cs
- AppSettingsExpressionBuilder.cs
- TrustSection.cs
- RewritingSimplifier.cs
- EDesignUtil.cs
- CodeSnippetStatement.cs
- LinkArea.cs
- LateBoundBitmapDecoder.cs
- externdll.cs
- DrawToolTipEventArgs.cs
- Rss20FeedFormatter.cs
- UInt32Storage.cs
- PrintDialogException.cs
- SpecularMaterial.cs
- ImplicitInputBrush.cs
- SqlDataSourceSummaryPanel.cs
- CodeCompiler.cs
- XhtmlBasicValidationSummaryAdapter.cs
- Trace.cs
- WsatConfiguration.cs
- FormViewModeEventArgs.cs
- RadioButtonRenderer.cs
- WorkflowApplicationAbortedException.cs
- documentsequencetextcontainer.cs
- SqlError.cs
- ChannelManager.cs
- QilInvoke.cs
- XmlIlVisitor.cs
- IfAction.cs
- SmiConnection.cs
- EntityStoreSchemaFilterEntry.cs
- ViewManager.cs
- HttpResponseInternalWrapper.cs
- RowTypeElement.cs
- OleDbCommand.cs
- RecognizeCompletedEventArgs.cs
- X509Utils.cs
- PointHitTestParameters.cs
- FileDialogCustomPlacesCollection.cs
- FilteredDataSetHelper.cs
- ControlPaint.cs
- DataSourceCacheDurationConverter.cs
- IntellisenseTextBox.cs
- FileUtil.cs
- XPathNodeList.cs
- ActiveXHelper.cs
- CopyOnWriteList.cs
- LassoHelper.cs
- NavigatorInput.cs
- DateTimeFormat.cs
- Style.cs
- GridViewCommandEventArgs.cs
- TextBoxAutoCompleteSourceConverter.cs