TablePattern.TablePatternInformation.RowOrColumnMajor Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Retrieves the primary direction of traversal (ColumnMajor, RowMajor, Indeterminate) for the table.
public:
property System::Windows::Automation::RowOrColumnMajor RowOrColumnMajor { System::Windows::Automation::RowOrColumnMajor get(); };
public System.Windows.Automation.RowOrColumnMajor RowOrColumnMajor { get; }
member this.RowOrColumnMajor : System.Windows.Automation.RowOrColumnMajor
Public ReadOnly Property RowOrColumnMajor As RowOrColumnMajor
Property Value
The primary direction of traversal. The default is Indeterminate.
Examples
In the following example, the row or column header is retrieved for a specific table item.
For the purposes of this example, a relationship between the RowOrColumnMajor property and the row and column header items is demonstrated. However, a table can have row and column headers regardless of the RowOrColumnMajor property of the table.
///--------------------------------------------------------------------
/// <summary>
/// Obtains a table items primary row or column header.
/// </summary>
/// <param name="tableItem">
/// The table item of interest.
/// </param>
/// <returns>
/// The table item header.
/// </returns>
///--------------------------------------------------------------------
private AutomationElement GetTableItemHeader(TableItemPattern tableItem)
{
if (tableItem == null)
{
throw new ArgumentException("Target element cannot be null.");
}
TablePattern tablePattern = GetTablePattern(tableItem.Current.ContainingGrid);
if (tablePattern == null)
{
return null;
}
AutomationElement[] tableHeaders =
GetPrimaryHeaders(tablePattern);
if (tableHeaders == null)
{
// Indeterminate headers.
return null;
}
if (tablePattern.Current.RowOrColumnMajor == RowOrColumnMajor.ColumnMajor)
{
return tableHeaders[tableItem.Current.Column];
}
if (tablePattern.Current.RowOrColumnMajor == RowOrColumnMajor.RowMajor)
{
return tableHeaders[tableItem.Current.Row];
}
return null;
}
///--------------------------------------------------------------------
/// <summary>
/// Obtains an array of table headers.
/// </summary>
/// <param name="tablePattern">
/// The TablePattern object of interest.
/// </param>
/// <returns>
/// The table row or column primary headers.
/// </returns>
///--------------------------------------------------------------------
private AutomationElement[] GetPrimaryHeaders(
TablePattern tablePattern)
{
if (tablePattern.Current.RowOrColumnMajor ==
RowOrColumnMajor.RowMajor)
{
return tablePattern.Current.GetRowHeaders();
}
if (tablePattern.Current.RowOrColumnMajor ==
RowOrColumnMajor.ColumnMajor)
{
return tablePattern.Current.GetColumnHeaders();
}
return null;
}
'''--------------------------------------------------------------------
''' <summary>
''' Obtains a table items primary row or column header.
''' </summary>
''' <param name="tableItem">
''' The table item of interest.
''' </param>
''' <returns>
''' The table item header.
''' </returns>
'''--------------------------------------------------------------------
Private Function GetTableItemHeader( _
ByVal tableItem As TableItemPattern) As AutomationElement
If tableItem Is Nothing Then
Throw New ArgumentException("Target element cannot be null.")
End If
Dim tablePattern As TablePattern = _
GetTablePattern(tableItem.Current.ContainingGrid)
If tablePattern Is Nothing Then
Return Nothing
End If
Dim tableHeaders As AutomationElement() = _
GetPrimaryHeaders(tablePattern)
If tableHeaders Is Nothing Then
' Indeterminate headers.
Return Nothing
End If
If tablePattern.Current.RowOrColumnMajor = _
RowOrColumnMajor.ColumnMajor Then
Return tableHeaders(tableItem.Current.Column)
End If
If tablePattern.Current.RowOrColumnMajor = _
RowOrColumnMajor.RowMajor Then
Return tableHeaders(tableItem.Current.Row)
End If
Return Nothing
End Function 'GetTableItemHeader
'''--------------------------------------------------------------------
''' <summary>
''' Obtains an array of table headers.
''' </summary>
''' <param name="tablePattern">
''' The TablePattern object of interest.
''' </param>
''' <returns>
''' The table primary row or column headers.
''' </returns>
'''--------------------------------------------------------------------
Private Overloads Function GetPrimaryHeaders( _
ByVal tablePattern As TablePattern) As AutomationElement()
If tablePattern.Current.RowOrColumnMajor = _
RowOrColumnMajor.RowMajor Then
Return tablePattern.Current.GetRowHeaders()
End If
If tablePattern.Current.RowOrColumnMajor = _
RowOrColumnMajor.ColumnMajor Then
Return tablePattern.Current.GetColumnHeaders()
End If
Return Nothing
End Function 'GetPrimaryHeaders
Applies to
See also
.NET
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기