Difference between revisions of "CSharp: AulaDemoDll.NamespaceC.Produto"

From AdonaiMedrado.Pro.Br
Jump to: navigation, search
(New page: <code lang="csharp"> using System; namespace AulaDemoDll.NamespaceC { public delegate void TratarEstoqueZero(Produto p); public class Produto { private int pEstoque; ...)
(No difference)

Revision as of 12:18, 11 November 2008

using System;
 
namespace AulaDemoDll.NamespaceC
{
    public delegate void TratarEstoqueZero(Produto p);
 
    public class Produto
    {
        private int pEstoque;
        public int Estoque
        {
            get
            {
                return pEstoque;
            }
            set
            {
                pEstoque = value;
                if (pEstoque <= 0 && TratarEstoqueZero != null)
                    TratarEstoqueZero(this);
            }
        }
 
        private TratarEstoqueZero pTratarEstoqueZero;
        public TratarEstoqueZero TratarEstoqueZero
        {
            get
            {
                return pTratarEstoqueZero;
            }
            set
            {
                pTratarEstoqueZero = value;
            }
        }
 
        public void Vender()
        {
            Estoque--;
        }
        public void Vender(int quantidade)
        {
            Estoque -= quantidade;
        }
 
        public Produto(int estoque, TratarEstoqueZero tratarEstoqueZero)
        {
            this.Estoque = estoque;
            this.TratarEstoqueZero = tratarEstoqueZero;
        }
    }
}