Bagikan melalui


AmbientValueAttribute Kelas

Definisi

Menentukan nilai yang akan diteruskan ke properti untuk menyebabkan properti mendapatkan nilainya dari sumber lain. Ini dikenal sebagai suasana. Kelas ini tidak dapat diwariskan.

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
Warisan
AmbientValueAttribute
Atribut

Contoh

Contoh kode berikut menunjukkan penggunaan AmbientValueAttribute untuk memberlakukan perilaku sekitar untuk properti yang disebut AlertForeColor. Untuk daftar kode lengkap, lihat Cara: Menerapkan Atribut di kontrol Formulir 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

Keterangan

Jika properti pada kontrol memiliki perilaku sekitar, atribut ini harus ada. Properti sekitar meminta induknya untuk nilainya, misalnya, Control.Font properti atau Control.BackColor properti.

Biasanya, desainer visual menggunakan AmbientValueAttribute atribut untuk memutuskan nilai mana yang akan dipertahankan untuk properti. Ini biasanya merupakan nilai yang menyebabkan properti mendapatkan nilainya dari sumber lain. Contoh nilai sekitar adalah Color.Empty sebagai nilai sekitar untuk BackColor properti . Jika Anda memiliki kontrol pada formulir dan BackColor properti kontrol diatur ke warna BackColor yang berbeda dari properti formulir, Anda dapat mengatur ulang BackColor properti kontrol ke formulir dengan mengatur BackColor kontrol ke Color.Empty.

Konstruktor

AmbientValueAttribute(Boolean)

Menginisialisasi instans AmbientValueAttribute baru kelas, mengingat nilai Boolean untuk nilainya.

AmbientValueAttribute(Byte)

Menginisialisasi instans AmbientValueAttribute baru kelas, mengingat bilangan bulat yang tidak ditandatangani 8-bit untuk nilainya.

AmbientValueAttribute(Char)

Menginisialisasi instans AmbientValueAttribute baru kelas, mengingat karakter Unicode untuk nilainya.

AmbientValueAttribute(Double)

Menginisialisasi instans AmbientValueAttribute baru kelas, mengingat angka floating-point presisi ganda untuk nilainya.

AmbientValueAttribute(Int16)

Menginisialisasi instans baru kelas, mengingat bilangan AmbientValueAttribute bulat bertanda 16-bit untuk nilainya.

AmbientValueAttribute(Int32)

Menginisialisasi instans baru kelas, mengingat bilangan AmbientValueAttribute bulat bertanda tangan 32-bit untuk nilainya.

AmbientValueAttribute(Int64)

Menginisialisasi instans baru kelas, mengingat bilangan AmbientValueAttribute bulat bertanda tangan 64-bit untuk nilainya.

AmbientValueAttribute(Object)

Menginisialisasi instans AmbientValueAttribute baru kelas, mengingat objek untuk nilainya.

AmbientValueAttribute(Single)

Menginisialisasi instans AmbientValueAttribute baru kelas, mengingat angka titik floating presisi tunggal untuk nilainya.

AmbientValueAttribute(String)

Menginisialisasi instans AmbientValueAttribute baru kelas, mengingat string untuk nilainya.

AmbientValueAttribute(Type, String)

Menginisialisasi instans AmbientValueAttribute baru kelas, mengingat nilai dan jenisnya.

Properti

TypeId

Ketika diimplementasikan di kelas turunan, mendapatkan pengidentifikasi unik untuk ini Attribute.

(Diperoleh dari Attribute)
Value

Mendapatkan objek yang merupakan nilai dari ini AmbientValueAttribute.

Metode

Equals(Object)

Menentukan apakah yang ditentukan AmbientValueAttribute sama dengan saat ini AmbientValueAttribute.

GetHashCode()

Mengembalikan kode hash untuk instans ini.

GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
IsDefaultAttribute()

Ketika ditimpa di kelas turunan, menunjukkan apakah nilai instans ini adalah nilai default untuk kelas turunan.

(Diperoleh dari Attribute)
Match(Object)

Saat ditimpa di kelas turunan, mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Implementasi Antarmuka Eksplisit

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

Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Mengambil informasi jenis untuk objek, yang dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1).

(Diperoleh dari Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Menyediakan akses ke properti dan metode yang diekspos oleh objek.

(Diperoleh dari Attribute)

Berlaku untuk