Inicializar una propiedad

12/01/2008 - 17:29 por Erick \(foxero\) | Informe spam
Como uno especifica un valor de inicializacion para una propiedad?
ej.
public string Propiedad {get; set;}

En el constructor veo que queda con valor null pero yo quiero que tenga un
valor antes de ejecutarse el constructor. Se puede ?

es VS2008 express

Preguntas similare

Leer las respuestas

#1 Guillermo guille
12/01/2008 - 18:58 | Informe spam
Si defines la propiedad de esa forma, no se puede.
Tendrás que hacerlo a la "vieja usanza", es decir, asociar a la propiedad un
campo privado, de esa forma puedes asignar un valor al declarar ese campo.

private string m_Propiedad = "valor inicial";

public string Propiedad
{
get{ return m_Propiedad; }
set
{
// validaciones, si vienen al caso
m_Propiedad = value;
}
}

Nos vemos
Guillermo

Microsoft MVP Visual Basic desde 1997
Tus consultas en los foros del Guille: http://foros.elguille.info/


"Erick (foxero)" <eric> wrote in message
news:
Como uno especifica un valor de inicializacion para una propiedad?
ej.
public string Propiedad {get; set;}

En el constructor veo que queda con valor null pero yo quiero que tenga un
valor antes de ejecutarse el constructor. Se puede ?

es VS2008 express


Respuesta Responder a este mensaje
#2 Alberto Poblacion
12/01/2008 - 18:59 | Informe spam
"Erick (foxero)" <eric> wrote in message
news:
Como uno especifica un valor de inicializacion para una propiedad?
ej.
public string Propiedad {get; set;}

En el constructor veo que queda con valor null pero yo quiero que tenga un
valor antes de ejecutarse el constructor. Se puede ?




Sí, definiendo la propiedad con su sintaxis "completa" en lugar de la
"abreviada":

private string propiedad = "Valor inicial";
public string Propiedad { get { return propiedad; } set {
propiedad=value; }}
Respuesta Responder a este mensaje
#3 Pedro Luna Montalvo
13/01/2008 - 02:04 | Informe spam
En el constructor de la clase podrías asignarle el valor inicial, pero no
podrías acceder al campo interno, sino que tendrías que usar la propiedad.

Es decir,

class MiClase
{
public string Propiedad {get; set;}

public MiClase() { this.Propiedad = "Valor inicial"; }
}

Saludos,
Pedro Luna, Gye, Ecu



"Erick (foxero)" <eric> escribió en el mensaje de
noticias:
Como uno especifica un valor de inicializacion para una propiedad?
ej.
public string Propiedad {get; set;}

En el constructor veo que queda con valor null pero yo quiero que tenga un
valor antes de ejecutarse el constructor. Se puede ?

es VS2008 express


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida