Procedura: rimuovere uno strumento decorativo da un elemento
In questo esempio viene mostrato come rimuovere a livello di codice uno specifico strumento decorativo visuale da un oggetto UIElement specificato.
Esempio
In questo esempio di codice dettagliato viene rimosso il primo strumento decorativo visuale 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.
Dim toRemoveArray() As Adorner = myAdornerLayer.GetAdorners(myTextBox)
Dim toRemove As Adorner
If toRemoveArray IsNot Nothing Then
toRemove = toRemoveArray(0)
myAdornerLayer.Remove(toRemove)
End If
Adorner[] toRemoveArray = myAdornerLayer.GetAdorners(myTextBox);
Adorner toRemove;
if (toRemoveArray != null)
{
toRemove = toRemoveArray[0];
myAdornerLayer.Remove(toRemove);
}
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
myAdornerLayer.Remove((myAdornerLayer.GetAdorners(myTextBox))(0))
Catch
End Try
try { myAdornerLayer.Remove((myAdornerLayer.GetAdorners(myTextBox))[0]); } catch { }