Condividi tramite


Procedura: rimuovere tutti gli strumenti decorativi visuali da un elemento

In questo esempio viene illustrato come rimuovere tutti gli strumenti decorativi a livello di codice da un oggetto specificato UIElement.

Recuperare gli strumenti decorativi in un oggetto UIElement

Questo esempio di codice dettagliato rimuove tutti gli strumenti decorativi nella matrice di strumenti decorativi restituiti da GetAdorners. Questo esempio consente di recuperare gli strumenti decorativi in un UIElement oggetto denominato myTextBox. Se l'elemento specificato nella chiamata a GetAdorners non dispone di strumenti decorativi, null viene restituito . Questo codice controlla in modo esplicito la presenza di una matrice Null ed è particolarmente adatto per le applicazioni in cui si prevede che una matrice Null sia relativamente comune.

Adorner[] toRemoveArray = myAdornerLayer.GetAdorners(myTextBox);
if (toRemoveArray != null)
{
  for (int x = 0; x < toRemoveArray.Length; x++)
  {
    myAdornerLayer.Remove(toRemoveArray[x]);
  }
}
    toRemoveArray = myAdornerLayer.GetAdorners(myTextBox)
If toRemoveArray IsNot Nothing Then
  For x As Integer = 0 To toRemoveArray.Length - 1
    myAdornerLayer.Remove(toRemoveArray(x))
  Next x
End If

Esempio di codice

Questo esempio di codice condensato è funzionalmente equivalente all'esempio dettagliato illustrato in precedenza. Questo codice non verifica in modo esplicito la presenza di una matrice Null, pertanto è possibile che venga generata un'eccezione NullReferenceException . Questo codice è più adatto per le applicazioni in cui si prevede che una matrice Null sia rara.

try { foreach (Adorner toRemove in myAdornerLayer.GetAdorners(myTextBox)) myAdornerLayer.Remove(toRemove); } catch { }
Try
        For Each toRemove In myAdornerLayer.GetAdorners(myTextBox)
            myAdornerLayer.Remove(toRemove)
        Next toRemove
Catch
End Try

Vedi anche