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 для принудительного внешнего поведения для свойства с именем AlertForeColor
. Полный список кода см. в разделе Практическое руководство. Применение атрибутов в элементах управления Windows Forms.
[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 свойство элемента управления на свойство формы, задав BackColor для элемента управления значение Color.Empty.
Конструкторы
AmbientValueAttribute(Boolean) |
Инициализирует новый экземпляр класса AmbientValueAttribute, используя заданное значение типа Boolean. |
AmbientValueAttribute(Byte) |
Инициализирует новый экземпляр класса AmbientValueAttribute, используя заданное значение 8-разрядного целого числа без знака. |
AmbientValueAttribute(Char) |
Инициализирует новый экземпляр класса AmbientValueAttribute, используя значение знака Юникод. |
AmbientValueAttribute(Double) |
Инициализирует новый экземпляр класса AmbientValueAttribute, используя значение с плавающей запятой с двойной точностью. |
AmbientValueAttribute(Int16) |
Инициализирует новый экземпляр класса AmbientValueAttribute, используя заданное значение 16-разрядного целого числа со знаком. |
AmbientValueAttribute(Int32) |
Инициализирует новый экземпляр класса AmbientValueAttribute, используя заданное значение 32-разрядного целого числа со знаком. |
AmbientValueAttribute(Int64) |
Инициализирует новый экземпляр класса AmbientValueAttribute, используя заданное значение 64-разрядного целого числа со знаком. |
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) |
Применяется к
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по