次の方法で共有


方法: 要素からすべての装飾を削除する

この例では、指定された UIElement からすべての装飾をプログラムで削除する方法を示します。

UIElement で装飾を取得する

この詳細なコード例では、GetAdorners によって返される装飾の配列にあるすべての装飾を削除します。 この例では、myTextBox という名前の UIElement の装飾を取得します。 GetAdorners の呼び出しで指定された要素に装飾がない場合、null が返されます。 このコードによって、Null 配列が明示的にチェックされます。これは、Null 配列が比較的一般的であると予想されるアプリケーションに最適です。

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

コードの例

この簡約されたコード例は、上記の詳細な例と機能的には同等です。 このコードでは、Null 配列が明示的にチェックされないため、NullReferenceException の例外が発生する可能性があります。 このコードは、Null 配列がまれであると予想されるアプリケーションに最適です。

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

関連項目