Прочитать на английском

Поделиться через


BrowsableAttribute Класс

Определение

Указывает, следует ли отображать свойство или событие в окне "Свойства".

[System.AttributeUsage(System.AttributeTargets.All)]
public sealed class BrowsableAttribute : Attribute
public sealed class BrowsableAttribute : Attribute
Наследование
BrowsableAttribute
Атрибуты

Примеры

В следующем примере свойство помечает как доступный для просмотра.

[Browsable(true)]
public int MyProperty
{
    get
    {
        // Insert code here.
        return 0;
    }
    set
    {
        // Insert code here.
    }
}

В следующем примере показано, как проверка значение для BrowsableAttributeMyProperty. Во-первых, код получает со PropertyDescriptorCollection всеми свойствами объекта . Затем код индексирует в для PropertyDescriptorCollection получения MyProperty. Затем он возвращает атрибуты для этого свойства и сохраняет их в переменной атрибутов.

В примере представлены два разных способа проверки значения BrowsableAttribute. Во втором фрагменте кода в примере вызывается Equals метод . В последнем фрагменте кода в примере используется Browsable свойство для проверка значения.

// Gets the attributes for the property.
AttributeCollection attributes =
   TypeDescriptor.GetProperties(this)["MyProperty"].Attributes;

// Checks to see if the value of the BrowsableAttribute is Yes.
if (attributes[typeof(BrowsableAttribute)].Equals(BrowsableAttribute.Yes))
{
    // Insert code here.
}

// This is another way to see whether the property is browsable.
BrowsableAttribute myAttribute =
   (BrowsableAttribute)attributes[typeof(BrowsableAttribute)];
if (myAttribute.Browsable)
{
    // Insert code here.
}

Если вы пометили класс с BrowsableAttributeпомощью , используйте следующий код, чтобы проверка значение .

AttributeCollection attributes =
    TypeDescriptor.GetAttributes(MyProperty);
if (attributes[typeof(BrowsableAttribute)].Equals(BrowsableAttribute.Yes))
{
    // Insert code here.
}

Комментарии

Визуальный конструктор обычно отображается в окно свойств тех членов, которые либо не имеют атрибута, доступного для просмотра, либо помечены параметром BrowsableAttribute конструктораbrowsable, имеющим значение true. Эти элементы можно изменять во время разработки. Элементы, помеченные параметром BrowsableAttributefalse конструктораbrowsable, не подходят для редактирования во время разработки и, следовательно, не отображаются в визуальном конструкторе. Значение по умолчанию — true.

Примечание

При помечаете свойство с Browsable(true)помощью , значением этого атрибута задается постоянный член Yes. Для свойства, помеченного параметром Browsable(false), значение равно No. Поэтому при проверка значение этого атрибута в коде необходимо указать атрибут как BrowsableAttribute.Yes или BrowsableAttribute.No.

Дополнительные сведения см. в разделе Атрибуты.

Конструкторы

BrowsableAttribute(Boolean)

Инициализирует новый экземпляр класса BrowsableAttribute.

Поля

Default

Задает значение по умолчанию для атрибута BrowsableAttribute, равное Yes. Это статическое (static) поле доступно только для чтения.

No

Указывает, что свойство или событие нельзя изменять во время разработки. Это статическое (static) поле доступно только для чтения.

Yes

Указывает, что свойство или событие можно изменять во время разработки. Это статическое (static) поле доступно только для чтения.

Свойства

Browsable

Возвращает значение, показывающее, будет ли объект отображаться в окне свойств.

TypeId

В случае реализации в производном классе возвращает уникальный идентификатор для этого атрибута Attribute.

(Унаследовано от Attribute)

Методы

Equals(Object)

Указывает, равен ли этот экземпляр заданному объекту.

GetHashCode()

Возвращает хэш-код данного экземпляра.

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
IsDefaultAttribute()

Определяет, является ли этот атрибут используемым по умолчанию.

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)

Применяется к

Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

См. также раздел