Procedura: rimuovere tutti gli strumenti decorativi visuali da un elemento
In questo esempio viene mostrato come rimuovere a livello di codice tutti gli strumenti decorativi visuali da un oggetto UIElement specificato.
Esempio
In questo esempio di codice dettagliato vengono rimossi tutti gli strumenti decorativi visuali della matrice di strumenti decorativi visuali restituita dall'oggetto GetAdorners. Nell'esempio vengono recuperati gli strumenti decorativi visuali di un oggetto UIElement denominato myTextBox. Se l'elemento specificato nella chiamata a GetAdorners non dispone di strumenti decorativi visuali, viene restituito null. Questo codice verifica in modo esplicito una matrice null ed è particolarmente indicato per le applicazioni in cui si prevede che una matrice null sia comune.
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
Adorner[] toRemoveArray = myAdornerLayer.GetAdorners(myTextBox);
if (toRemoveArray != null)
{
for (int x = 0; x < toRemoveArray.Length; x++)
{
myAdornerLayer.Remove(toRemoveArray[x]);
}
}
Questo esempio di codice ridotto è equivalente, da un punto di vista funzionale, all'esempio dettagliato mostrato in precedenza. Questo codice non verifica in modo esplicito una matrice null, pertanto è possibile che venga generata un'eccezione NullReferenceException. Questo codice è particolarmente indicato per le applicazioni in cui si prevede che una matrice null sia rara.
Try
For Each toRemove In myAdornerLayer.GetAdorners(myTextBox)
myAdornerLayer.Remove(toRemove)
Next toRemove
Catch
End Try
try { foreach (Adorner toRemove in myAdornerLayer.GetAdorners(myTextBox)) myAdornerLayer.Remove(toRemove); } catch { }