HOW TO:移除項目的所有裝飾項
本範例顯示如何以程式設計的方式,從指定的 UIElement 移除所有裝飾項。
範例
這個詳細的程式碼範例會移除 GetAdorners 傳回之裝飾項陣列中的所有裝飾項。 此範例擷取的裝飾項剛好位於名稱為 myTextBox 的 UIElement 上。 如果呼叫 GetAdorners 時指定的項目沒有任何裝飾項,則會傳回 null。 這個程式碼會明確檢查 null 陣列,因此最適合 null 陣列應該相當常見的應用程式。
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]);
}
}
這個濃縮版的程式碼範例在功能上相當於前面顯示的詳細範例。 這個程式碼不會明確檢查 null 陣列,因此可能會引發 NullReferenceException 例外狀況。 這個程式碼最適合 null 陣列較為少見的應用程式。
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 { }