Tento článek byl přeložen strojově počítačem. Původní text zobrazíte přesunutím ukazatele myši nad jednotlivé věty článku. Další informace
Překlad
Originál
Toto téma nebylo dosud ohodnoceno - Ohodnotit toto téma

Attribute.IsDefaultAttribute – metoda

Přepsat v odvozené třídě, označuje, zda je hodnota této instanci výchozí hodnotu pro odvozené třídy.

Obor názvů:  System
Sestavení:  mscorlib (v mscorlib.dll)
public virtual bool IsDefaultAttribute()

Vrácená hodnota

Typ: System.Boolean
true Pokud je tato instance výchozí atribut třídy; jinak false.

Vrací výchozí implementace třídy falsea musí být prováděny v odvozené třídě být užitečné pro třídy.

Provádění této metody v odvozené třídě porovná hodnotu této instance na standardní výchozí hodnotu, vrátí booleovskou hodnotu, která označuje, zda je hodnota této instance standardní hodnota. Standardní hodnota je obvykle zakódována jako konstanta v provádění nebo programově uložených v poli používaných k provádění.

Následující příklad kódu ukazuje použití IsDefaultAttribute.


using System;
using System.Reflection;

namespace DefAttrCS 
{
    // An enumeration of animals. Start at 1 (0 = uninitialized).
    public enum Animal 
    {
        // Pets.
        Dog = 1,
        Cat,
        Bird,
    }

    // A custom attribute to allow a target to have a pet.
    public class AnimalTypeAttribute : Attribute 
    {
        // The constructor is called when the attribute is set.
        public AnimalTypeAttribute(Animal pet) 
        {
            thePet = pet;
        }

        // Provide a default constructor and make Dog the default.
        public AnimalTypeAttribute() 
        {
            thePet = Animal.Dog;
        }

        // Keep a variable internally ...
        protected Animal thePet;

        // .. and show a copy to the outside world.
        public Animal Pet 
        {
            get { return thePet; }
            set { thePet = Pet; }
        }

        // Override IsDefaultAttribute to return the correct response.
        public override bool IsDefaultAttribute() 
        {
            if (thePet == Animal.Dog)
                return true;

            return false;
        }
    }

    public class TestClass 
    {
        // Use the default constructor.
        [AnimalType]
        public void Method1()
        {}
    }

    class DemoClass 
    {
        static void Main(string[] args) 
        {
            // Get the class type to access its metadata.
            Type clsType = typeof(TestClass);
            // Get type information for the method.
            MethodInfo mInfo = clsType.GetMethod("Method1");
            // Get the AnimalType attribute for the method.
            AnimalTypeAttribute atAttr = 
                (AnimalTypeAttribute)Attribute.GetCustomAttribute(mInfo,
                typeof(AnimalTypeAttribute));
            // Check to see if the default attribute is applied.
            Console.WriteLine("The attribute {0} for method {1} in class {2}",
                atAttr.Pet, mInfo.Name, clsType.Name); 
            Console.WriteLine("{0} the default for the AnimalType attribute.", 
                atAttr.IsDefaultAttribute() ? "is" : "is not");
        }
    }
}


.NET Framework

Podporováno v: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Podporováno v: 4, 3.5 SP1

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (role Server Core není podporována), Windows Server 2008 R2 (role Server Core je podporována s aktualizací SP1 nebo novější, architektura Itanium není podporována)

.NET Framework nepodporuje některé verze platforem. Seznam podporovaných verzí naleznete v tématu Požadavky na systém rozhraní .NET framework.
Byl tento obsah pro vás užitečný?
(Zbývající počet znaků: 1500)

Obsah vytvořený komunitou

Přidat
© 2013 Microsoft. Všechna práva vyhrazena.