SelectionItemPattern.RemoveFromSelection Método
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Remove o elemento atual da coleção de itens selecionados.
public:
void RemoveFromSelection();
public void RemoveFromSelection ();
member this.RemoveFromSelection : unit -> unit
Public Sub RemoveFromSelection ()
É feita uma tentativa de remover uma seleção de um contêiner de seleção em que um item é selecionado e IsSelectionRequiredProperty = true
.
O exemplo a seguir mostra como remover um elemento da coleção de itens selecionados no momento.
///--------------------------------------------------------------------
/// <summary>
/// Retrieves the selection container for a selection item.
/// </summary>
/// <param name="selectionItem">
/// An automation element that supports SelectionItemPattern.
/// </param>
///--------------------------------------------------------------------
private AutomationElement GetSelectionItemContainer(
AutomationElement selectionItem)
{
// Selection item cannot be null
if (selectionItem == null)
{
throw new ArgumentException();
}
SelectionItemPattern selectionItemPattern =
selectionItem.GetCurrentPattern(SelectionItemPattern.Pattern)
as SelectionItemPattern;
if (selectionItemPattern == null)
{
return null;
}
else
{
return selectionItemPattern.Current.SelectionContainer;
}
}
'''--------------------------------------------------------------------
''' <summary>
''' Retrieves the selection container for a selection item.
''' </summary>
''' <param name="selectionItem">
''' An automation element that supports SelectionItemPattern.
''' </param>
'''--------------------------------------------------------------------
Private Function GetSelectionItemContainer( _
ByVal selectionItem As AutomationElement) As AutomationElement
' Selection item cannot be null
If selectionItem Is Nothing Then
Throw New ArgumentException()
End If
Dim selectionItemPattern As SelectionItemPattern = _
DirectCast(selectionItem.GetCurrentPattern( _
selectionItemPattern.Pattern), SelectionItemPattern)
If selectionItemPattern Is Nothing Then
Return Nothing
Else
Return selectionItemPattern.Current.SelectionContainer
End If
End Function 'GetSelectionItemContainer
///--------------------------------------------------------------------
/// <summary>
/// Attempts to remove the current item from a collection
/// of selected items.
/// </summary>
/// <param name="selectionItem">
/// An automation element that supports SelectionItemPattern.
/// </param>
///--------------------------------------------------------------------
private void RemoveItemFromSelection(AutomationElement selectionItem)
{
if (selectionItem == null)
{
throw new ArgumentNullException(
"Argument cannot be null or empty.");
}
AutomationElement selectionContainer =
GetSelectionItemContainer(selectionItem);
// Selection container cannot be null
if (selectionContainer == null)
{
throw new ElementNotAvailableException();
}
SelectionPattern selectionPattern =
selectionContainer.GetCurrentPattern(SelectionPattern.Pattern)
as SelectionPattern;
if (selectionPattern == null)
{
return;
}
// Check if a selection is required
if (selectionPattern.Current.IsSelectionRequired &&
(selectionPattern.Current.GetSelection().GetLength(0) <= 1))
{
return;
}
SelectionItemPattern selectionItemPattern =
selectionItem.GetCurrentPattern(
SelectionItemPattern.Pattern)
as SelectionItemPattern;
if ((selectionItemPattern != null) &&
selectionItemPattern.Current.IsSelected)
{
try
{
selectionItemPattern.RemoveFromSelection();
}
catch (InvalidOperationException)
{
// Unable to remove from selection
return;
}
}
}
'''--------------------------------------------------------------------
''' <summary>
''' Attempts to remove the current item from a collection
''' of selected items.
''' </summary>
''' <param name="selectionItem">
''' An automation element that supports SelectionItemPattern.
''' </param>
'''--------------------------------------------------------------------
Private Sub RemoveItemFromSelection( _
ByVal selectionItem As AutomationElement)
If selectionItem Is Nothing Then
Throw New ArgumentNullException( _
"Argument cannot be null or empty.")
End If
Dim selectionContainer As AutomationElement = _
GetSelectionItemContainer(selectionItem)
' Selection container cannot be null
If selectionContainer Is Nothing Then
Throw New ElementNotAvailableException()
End If
Dim selectionPattern As SelectionPattern = DirectCast( _
selectionContainer.GetCurrentPattern(selectionPattern.Pattern), _
SelectionPattern)
If selectionPattern Is Nothing Then
Return
End If
' Check if a selection is required
If selectionPattern.Current.IsSelectionRequired AndAlso _
selectionPattern.Current.GetSelection().GetLength(0) <= 1 Then
Return
End If
Dim selectionItemPattern As SelectionItemPattern = DirectCast( _
selectionItem.GetCurrentPattern(selectionItemPattern.Pattern), _
SelectionItemPattern)
If Not (selectionItemPattern Is Nothing) AndAlso selectionItemPattern.Current.IsSelected Then
Try
selectionItemPattern.RemoveFromSelection()
Catch
' Unable to remove from selection
Return
End Try
End If
End Sub
Produto | Versões |
---|---|
.NET Framework | 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
Windows Desktop | 3.0, 3.1, 5, 6, 7, 8, 9 |
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: