SelectionPattern.SelectionPatternInformation.CanSelectMultiple Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение, указывающее, может ли контейнер выбрать несколько дочерних элементов одновременно.
public:
property bool CanSelectMultiple { bool get(); };
public bool CanSelectMultiple { get; }
member this.CanSelectMultiple : bool
Public ReadOnly Property CanSelectMultiple As Boolean
Значение свойства
true Значение , если элемент управления поддерживает несколько выборок; в противном случае false.
Примеры
В следующем примере SelectionPattern шаблон элемента управления получается из и впоследствии используется для получения значений AutomationElement свойств.
///--------------------------------------------------------------------
/// <summary>
/// Obtains a SelectionPattern control pattern from an
/// automation element.
/// </summary>
/// <param name="targetControl">
/// The automation element of interest.
/// </param>
/// <returns>
/// A SelectionPattern object.
/// </returns>
///--------------------------------------------------------------------
private SelectionPattern GetSelectionPattern(
AutomationElement targetControl)
{
SelectionPattern selectionPattern = null;
try
{
selectionPattern =
targetControl.GetCurrentPattern(SelectionPattern.Pattern)
as SelectionPattern;
}
// Object doesn't support the SelectionPattern control pattern
catch (InvalidOperationException)
{
return null;
}
return selectionPattern;
}
'''--------------------------------------------------------------------
''' <summary>
''' Obtains a SelectionPattern control pattern from an
''' automation element.
''' </summary>
''' <param name="targetControl">
''' The automation element of interest.
''' </param>
''' <returns>
''' A SelectionPattern object.
''' </returns>
'''--------------------------------------------------------------------
Private Function GetSelectionPattern( _
ByVal targetControl As AutomationElement) As SelectionPattern
Dim selectionPattern As SelectionPattern = Nothing
Try
selectionPattern = DirectCast( _
targetControl.GetCurrentPattern(selectionPattern.Pattern), _
SelectionPattern)
' Object doesn't support the SelectionPattern control pattern
Catch
Return Nothing
End Try
Return selectionPattern
End Function 'GetSelectionPattern
///--------------------------------------------------------------------
/// <summary>
/// Gets the current property values from target.
/// </summary>
/// <param name="selectionPattern">
/// A SelectionPattern control pattern obtained from
/// an automation element representing the selection control.
/// </param>
/// <param name="automationProperty">
/// The automation property of interest.
/// </param>
///--------------------------------------------------------------------
private bool GetSelectionObjectProperty(
SelectionPattern selectionPattern,
AutomationProperty automationProperty)
{
if (automationProperty.Id ==
SelectionPattern.CanSelectMultipleProperty.Id)
{
return selectionPattern.Current.CanSelectMultiple;
}
if (automationProperty.Id ==
SelectionPattern.IsSelectionRequiredProperty.Id)
{
return selectionPattern.Current.IsSelectionRequired;
}
return false;
}
'''--------------------------------------------------------------------
''' <summary>
''' Gets the current property values from target.
''' </summary>
''' <param name="selectionPattern">
''' A SelectionPattern control pattern obtained from
''' an automation element representing the selection control.
''' </param>
''' <param name="automationProperty">
''' The automation property of interest.
''' </param>
'''--------------------------------------------------------------------
Private Function GetSelectionObjectProperty( _
ByVal selectionPattern As SelectionPattern, _
ByVal automationProperty As AutomationProperty) As Boolean
If automationProperty.Id = _
selectionPattern.CanSelectMultipleProperty.Id Then
Return selectionPattern.Current.CanSelectMultiple
End If
If automationProperty.Id = _
selectionPattern.IsSelectionRequiredProperty.Id Then
Return selectionPattern.Current.IsSelectionRequired
End If
Return False
End Function 'GetSelectionObjectProperty
Комментарии
Это свойство может быть динамическим, например, в редких случаях элемент управления может разрешить выбор нескольких элементов при инициализации, но впоследствии разрешить выполнять только отдельные выборы.