AmbientValueAttribute クラス

定義

プロパティに渡す値を指定し、そのプロパティが別のソースから値を取得するようにします。 これは "アンビエンス" と呼ばれています。 このクラスは継承できません。

public ref class AmbientValueAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.All)]
public sealed class AmbientValueAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.All)>]
type AmbientValueAttribute = class
    inherit Attribute
Public NotInheritable Class AmbientValueAttribute
Inherits Attribute
継承
AmbientValueAttribute
属性

次のコード例では、 を使用 AmbientValueAttribute して、 という AlertForeColorプロパティにアンビエント動作を適用する方法を示します。 完全なコード一覧については、「方法: Windows フォーム コントロールで属性を適用する」を参照してください。

[AmbientValue(typeof(Color), "Empty")]
[Category("Appearance")]
[DefaultValue(typeof(Color), "White")]
[Description("The color used for painting alert text.")]
public Color AlertForeColor
{
    get
    {
        if (this.alertForeColorValue == Color.Empty &&
            this.Parent != null)
        {
            return Parent.ForeColor;
        }

        return this.alertForeColorValue;
    }

    set
    {
        this.alertForeColorValue = value;
    }
}

// This method is used by designers to enable resetting the
// property to its default value.
public void ResetAlertForeColor()
{
    this.AlertForeColor = AttributesDemoControl.defaultAlertForeColorValue;
}

// This method indicates to designers whether the property
// value is different from the ambient value, in which case
// the designer should persist the value.
private bool ShouldSerializeAlertForeColor()
{
    return (this.alertForeColorValue != AttributesDemoControl.ambientColorValue);
}
<AmbientValue(GetType(Color), "Empty"), _
Category("Appearance"), _
DefaultValue(GetType(Color), "White"), _
Description("The color used for painting alert text.")> _
Public Property AlertForeColor() As Color
    Get
        If Me.alertForeColorValue = Color.Empty AndAlso (Me.Parent IsNot Nothing) Then
            Return Parent.ForeColor
        End If

        Return Me.alertForeColorValue
    End Get

    Set(ByVal value As Color)
        Me.alertForeColorValue = value
    End Set
End Property

' This method is used by designers to enable resetting the
' property to its default value.
Public Sub ResetAlertForeColor()
    Me.AlertForeColor = AttributesDemoControl.defaultAlertForeColorValue
End Sub

' This method indicates to designers whether the property
' value is different from the ambient value, in which case
' the designer should persist the value.
Private Function ShouldSerializeAlertForeColor() As Boolean
    Return Me.alertForeColorValue <> AttributesDemoControl.ambientColorValue
End Function

注釈

コントロールのプロパティにアンビエント動作がある場合は、この属性が存在する必要があります。 アンビエント プロパティは、親の値 (プロパティやプロパティなど) に対して Control.Font クエリを Control.BackColor 実行します。

通常、ビジュアル デザイナーは 属性を AmbientValueAttribute 使用して、プロパティに保持する値を決定します。 これは通常、 プロパティが別のソースから値を取得する値です。 アンビエント値の例は、 Color.Empty プロパティのアンビエント値 BackColor です。 フォームにコントロールがあり、コントロールの BackColor プロパティがフォームの プロパティとは異なる色BackColorに設定されている場合は、コントロールの の を に設定BackColorすることで、コントロールの プロパティをフォームのプロパティにColor.EmptyリセットBackColorできます。

コンストラクター

AmbientValueAttribute(Boolean)

値としてブール値を指定して、AmbientValueAttribute クラスの新しいインスタンスを初期化します。

AmbientValueAttribute(Byte)

値として 8 ビット符号なし整数を指定して、AmbientValueAttribute クラスの新しいインスタンスを初期化します。

AmbientValueAttribute(Char)

値として Unicode 文字を指定して、AmbientValueAttribute クラスの新しいインスタンスを初期化します。

AmbientValueAttribute(Double)

値として倍精度浮動小数点数を指定して、AmbientValueAttribute クラスの新しいインスタンスを初期化します。

AmbientValueAttribute(Int16)

値として 16 ビット符号付き整数を指定して、AmbientValueAttribute クラスの新しいインスタンスを初期化します。

AmbientValueAttribute(Int32)

値として 32 ビット符号付き整数を指定して、AmbientValueAttribute クラスの新しいインスタンスを初期化します。

AmbientValueAttribute(Int64)

値として 64 ビット符号付き整数を指定して、AmbientValueAttribute クラスの新しいインスタンスを初期化します。

AmbientValueAttribute(Object)

値としてオブジェクトを指定して、AmbientValueAttribute クラスの新しいインスタンスを初期化します。

AmbientValueAttribute(Single)

値として単精度浮動小数点数を指定して、AmbientValueAttribute クラスの新しいインスタンスを初期化します。

AmbientValueAttribute(String)

値として文字列を設定して、AmbientValueAttribute クラスの新しいインスタンスを初期化します。

AmbientValueAttribute(Type, String)

値とその型を指定して、AmbientValueAttribute クラスの新しいインスタンスを初期化します。

プロパティ

TypeId

派生クラスで実装されると、この Attribute の一意の識別子を取得します。

(継承元 Attribute)
Value

AmbientValueAttribute の値であるオブジェクトを取得します。

メソッド

Equals(Object)

指定した AmbientValueAttribute が現在の AmbientValueAttribute と等しいかどうかを示します。

GetHashCode()

このインスタンスのハッシュ コードを返します。

GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
IsDefaultAttribute()

派生クラスでオーバーライドされるとき、このインスタンスの値が派生クラスの既定値であるかどうかを示します。

(継承元 Attribute)
Match(Object)

派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。

(継承元 Attribute)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

明示的なインターフェイスの実装

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

一連の名前を対応する一連のディスパッチ識別子に割り当てます。

(継承元 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

オブジェクトの型情報を取得します。この情報はインターフェイスの型情報の取得に使用できます。

(継承元 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

オブジェクトが提供する型情報インターフェイスの数 (0 または 1) を取得します。

(継承元 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

オブジェクトによって公開されたプロパティおよびメソッドへのアクセスを提供します。

(継承元 Attribute)

適用対象