Criar uma proprieade....

28/08/2010

0

Boa Noite Galera, eu estava procurando alguma forma de criaar alguma propriedade... Ex.: Eu Criação textbox e nesse textbox e ter com criar a faciliadade de usar ele com CPF, CNPJ, TELEFONE. Como se fosse o mask... mais tudo implementado antes, ai eu so faria a seleção nas propriedade do controle...     Se tiver como e fico grato pela ajuda...   Vlw
Danielson Sousa

Danielson Sousa

Responder

Posts

02/09/2010

Vinicius Vieira

Parceiro é possível sim, e é relativamente simples de fazer, tanto que já aproveitei e fiz uma que quase já atende o que você quer, basta fazer alguma alterações, básicamente é só você herdar a classe de um componente básica e fazer sua alterações, inclsa um arquivo de classe no seu projeto de utilidades ou de controles se tiver um e cole o código abaixo, depois disso em todas as soluções que esse projeto estiver presenta vai aparecer na toolbox como se fosse um controle normal com esse nome que eu coloquei na classe, ai é só você arrastar ele para o seu form depois de colocado no form vc seleciona ele e vai nas propriedades altera a propriedade tipo e ve o que acontece!Vou colocar umas imagens para ilustrar o que eu to falando, abraços!using System;using System.Collections.Generic;using System.Text;using System.Windows.Forms;using System.ComponentModel;namespace Util{    public enum TipoMskTextBox{        CNPJ,        CPF,        RG,        DEFAULT    }    public class CutomMskTextBox:MaskedTextBox    {        public CutomMskTextBox() {                   }        private bool aceitaLetras = true;        private bool aceitaSubTraco = true;        private TipoMskTextBox tipo = TipoMskTextBox.DEFAULT;        public string TIPO        {            get { return parseTipoMskTextBoxString(tipo); }            set { tipo = parseStringTipoMskTextBox(value); setTipo(); }        }        private void setTipo() {              if (tipo == TipoMskTextBox.RG)            {                this.Mask = "##.###.###-#";                aceitaLetras = true;            }            else if (tipo == TipoMskTextBox.CNPJ)            {                aceitaLetras = false;                this.Mask = "##.###.###.####-##";            }            else if (tipo == TipoMskTextBox.CPF)            {                aceitaLetras = false;                this.Mask = "###.###.###-##";            }            else            {                aceitaLetras = false;                this.Mask = "###.###.###-##";            }        }        private TipoMskTextBox parseStringTipoMskTextBox(string Valor){            if (Valor == "CNPJ") {                return TipoMskTextBox.CNPJ;            }else if(Valor == "CPF"){                return TipoMskTextBox.CPF;            }            else if (Valor == "RG")            {                return TipoMskTextBox.RG;            }            else {                return TipoMskTextBox.DEFAULT;            }        }        private string parseTipoMskTextBoxString(TipoMskTextBox Valor)        {            if (Valor == TipoMskTextBox.CNPJ)            {                return "CNPJ";            }            else if (Valor ==TipoMskTextBox.CPF )            {                return "CPF";            }            else if (Valor == TipoMskTextBox.RG)            {                return "RG";            }            else            {                return "DEFAULT";            }        }
        protected override void OnKeyPress(KeyPressEventArgs e)        {            base.OnKeyPress(e);
            string s = "'!@¨&*()+=}][{´`~^?|\\;:ºª¹²³£¢¬º¿®½¼»";            if (s.Contains(e.KeyChar.ToString()))            {                e.KeyChar = char.MinValue;                e.Handled = true;                return;            }
            if (!this.aceitaLetras && char.IsLetter(e.KeyChar))            {                e.KeyChar = char.MinValue;                e.Handled = true;                return;            }


            if (!this.aceitaLetras && e.KeyChar == 95)            {                e.KeyChar = char.MinValue;                e.Handled = true;                return;            }        }                private void InitializeComponent()        {            this.SuspendLayout();                       this.ResumeLayout(false);        }    }}

 
Responder

02/09/2010

Vinicius Vieira


  não consegui colocar a imagem pq não tenho url.Mas acho que você vai conseguir fazer qualquer coisa me pergunta.
Responder

02/09/2010

Danielson Sousa

Cara obg, vou testa aqui e qualquer coisa lhe pergunto...
Responder

02/09/2010

Vinicius Vieira

Não esqueça de marcar o tópico como respondido, se der tudo certo ;DAbraços
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar