TableItemPattern.TableItemPatternInformation.ColumnSpan 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
테이블 셀 또는 항목의 범위에 포함되는 열 수를 가져옵니다.
public:
property int ColumnSpan { int get(); };
public int ColumnSpan { get; }
member this.ColumnSpan : int
Public ReadOnly Property ColumnSpan As Integer
속성 값
범위에 포함되는 열 수입니다. 기본값은 1입니다.
예제
다음 예제에서는 AutomationFocusChangedEvent 테이블 컨테이너 내에서 테이블 항목의 이동을 추적 하려면 수신기를 선언 합니다. 항목 속성 포커스 변경 이벤트가 발생할 때마다 기록 됩니다.
///--------------------------------------------------------------------
/// <summary>
/// Set up table item event listeners.
/// </summary>
/// <remarks>
/// The event listener is essentially a focus change listener.
/// Since this is a global desktop listener, a filter would be required
/// to ignore focus change events outside the table.
/// </remarks>
///--------------------------------------------------------------------
private void SetTableItemEventListeners()
{
AutomationFocusChangedEventHandler tableItemFocusChangedListener =
new AutomationFocusChangedEventHandler(OnTableItemFocusChange);
Automation.AddAutomationFocusChangedEventHandler(
tableItemFocusChangedListener);
}
'''--------------------------------------------------------------------
''' <summary>
''' Set up table item event listeners.
''' </summary>
''' <remarks>
''' The event listener is essentially a focus change listener.
''' Since this is a global desktop listener, a filter would be required
''' to ignore focus change events outside the table.
''' </remarks>
'''--------------------------------------------------------------------
Private Sub SetTableItemEventListeners( _
ByVal targetControl As AutomationElement)
Dim tableItemFocusChangedListener As AutomationFocusChangedEventHandler = _
AddressOf OnTableItemFocusChange
Automation.AddAutomationFocusChangedEventHandler( _
tableItemFocusChangedListener)
End Sub
///--------------------------------------------------------------------
/// <summary>
/// Event handler for table item focus change.
/// Can be used to track traversal of individual table items
/// within a table.
/// </summary>
/// <param name="src">Object that raised the event.</param>
/// <param name="e">Event arguments.</param>
///--------------------------------------------------------------------
private void OnTableItemFocusChange(
object src, AutomationFocusChangedEventArgs e)
{
// Make sure the element still exists. Elements such as tooltips
// can disappear before the event is processed.
AutomationElement sourceElement;
try
{
sourceElement = src as AutomationElement;
}
catch (ElementNotAvailableException)
{
return;
}
// Get a TableItemPattern from the source of the event.
TableItemPattern tableItemPattern =
GetTableItemPattern(sourceElement);
if (tableItemPattern == null)
{
return;
}
// Get a TablePattern from the container of the current element.
TablePattern tablePattern =
GetTablePattern(tableItemPattern.Current.ContainingGrid);
if (tablePattern == null)
{
return;
}
AutomationElement tableItem = null;
try
{
tableItem = tablePattern.GetItem(
tableItemPattern.Current.Row,
tableItemPattern.Current.Column);
}
catch (ArgumentOutOfRangeException)
{
// If the requested row coordinate is larger than the RowCount
// or the column coordinate is larger than the ColumnCount.
// -- OR --
// If either of the requested row or column coordinates
// is less than zero.
// TO DO: error handling.
}
// Further event processing can be done at this point.
// For the purposes of this sample we can just record item properties.
string controlType =
tableItem.Current.ControlType.LocalizedControlType;
AutomationElement[] columnHeaders =
tableItemPattern.Current.GetColumnHeaderItems();
AutomationElement[] rowHeaders =
tableItemPattern.Current.GetRowHeaderItems();
int itemRow = tableItemPattern.Current.Row;
int itemColumn = tableItemPattern.Current.Column;
int itemRowSpan = tableItemPattern.Current.RowSpan;
int itemColumnSpan = tableItemPattern.Current.ColumnSpan;
}
///--------------------------------------------------------------------
/// <summary>
/// Handles the application shutdown.
/// </summary>
/// <param name="args">Event arguments.</param>
///--------------------------------------------------------------------
protected override void OnExit(System.Windows.ExitEventArgs args)
{
Automation.RemoveAllEventHandlers();
base.OnExit(args);
}
'''--------------------------------------------------------------------
''' <summary>
''' Event handler for table item focus change.
''' Can be used to track traversal of individual table items
''' within a table.
''' </summary>
''' <param name="src">Object that raised the event.</param>
''' <param name="e">Event arguments.</param>
'''--------------------------------------------------------------------
Private Sub OnTableItemFocusChange( _
ByVal src As Object, ByVal e As AutomationFocusChangedEventArgs)
' Make sure the element still exists. Elements such as tooltips
' can disappear before the event is processed.
Dim sourceElement As AutomationElement
Try
sourceElement = DirectCast(src, AutomationElement)
Catch exc As ElementNotAvailableException
Return
End Try
' Get a TableItemPattern from the source of the event.
Dim tableItemPattern As TableItemPattern = _
GetTableItemPattern(sourceElement)
If tableItemPattern Is Nothing Then
Return
End If
' Get a TablePattern from the container of the current element.
Dim tablePattern As TablePattern = _
GetTablePattern(tableItemPattern.Current.ContainingGrid)
If tablePattern Is Nothing Then
Return
End If
Dim tableItem As AutomationElement = Nothing
Try
tableItem = tablePattern.GetItem( _
tableItemPattern.Current.Row, tableItemPattern.Current.Column)
Catch exc As ArgumentOutOfRangeException
' If the requested row coordinate is larger than the RowCount
' or the column coordinate is larger than the ColumnCount.
' -- OR --
' If either of the requested row or column coordinates
' is less than zero.
' TO DO: error handling.
End Try
' Further event processing can be done at this point.
' For the purposes of this sample we can just record item properties.
Dim controlType As String = _
tableItem.Current.ControlType.LocalizedControlType
Dim columnHeaders As AutomationElement() = _
tableItemPattern.Current.GetColumnHeaderItems()
Dim rowHeaders As AutomationElement() = _
tableItemPattern.Current.GetRowHeaderItems()
Dim itemRow As Integer = tableItemPattern.Current.Row
Dim itemColumn As Integer = tableItemPattern.Current.Column
Dim itemRowSpan As Integer = tableItemPattern.Current.RowSpan
Dim itemColumnSpan As Integer = tableItemPattern.Current.ColumnSpan
End Sub
'''--------------------------------------------------------------------
''' <summary>
''' Handles the application shutdown.
''' </summary>
''' <param name="args">Event arguments.</param>
'''--------------------------------------------------------------------
Protected Overrides Sub OnExit(ByVal args As System.Windows.ExitEventArgs)
Automation.RemoveAllEventHandlers()
MyBase.OnExit(args)
End Sub
적용 대상
추가 정보
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET