Hola Luis Primera: Podes aplicar el patrón singleton o simplemente una clase con miembros Shadow. En el singleton solo tendrás una instancia de la clase, siempre será la misma. Con Shadow no tenes que instanciar, se comporta parecido a un objeto global. ( una comparación fea y burda, solo para darte la idea... )
Un ej.: http://www.vbdotnetheaven.com/UploadFile/susanabraham/CreationalPatternsvb11122005001524AM/CreationalPatternsvb.aspx Segunda: En net se puede hacer lo que queres utilizando Reflection, el acceso es más lento y el código un poco mas criptico. Una curiosidad de diseño sobre tu ejemplo: Empleado.NombreCompleto= Empleado.Apellido & ", " & Empleado.Nombre NombreCompleto tiene mas pinta de metodo que de propiedad, y en todo caso, si te gusta propiedad, no debería ser de solo lectura? Empleado.Apellido & ", " & Empleado.Nombre Esto lo logico sería que este dentro del metodo o propiedad . Bueno, eso es todo. Saludos Daniel Calvin El 11 de agosto de 2008 9:52, Luis Mamud (LCL Sistemas) < [EMAIL PROTECTED]> escribió: > Aprovecho la discusión para preguntar algo relacionado. > ¿Existe alguna posibilidad de tener variables "Globales" como había en VB6. > Estoy pensando sobretodo en valores de configuración de un sistema o, por > ejemplo, en un clipboard propio. La única solución que hallé es crear una > clase, inicializarla creando un objeto desde un form que nunca se descargue > y referenciar esa instancia en el constructor de cada clase. > > > Y, ya que estoy por acá, pregunto... ¿hay forma de acceder a las > propiedades de un objeto por referencia? > Por ejemplo, teniendo una clase "claseEmpleado" con propiedades "Nombre" y > "Apellido", > en lugar de escribir > Dim Empleado as claseEmpleado=New claseEmpleado > > Empleado.NombreCompleto= Empleado.Apellido & ", " & Empleado.Nombre > > ¿Se puede hacer algo así como: > > Dim Empleado as claseEmpleado=New claseEmpleado > > Dim Prop1 as string="Apellido" > Dim Prop2 as string="Nombre" > Dim PropResultado as string="NombreCompleto" > > Empleado(PropResultado)=Empleado (Prop1) & "," & Empleado (Prop2) > > ? > > Gracias desde ya a todos los más experimentados con .Net. > Saludos > Luis > > ------------------------------ > *De:* [email protected] [mailto:[EMAIL PROTECTED] *En nombre de *Daniel > Calvin > *Enviado el:* Lunes, 11 de Agosto de 2008 09:34 > *Para:* vbusers List Member > *Asunto:* [vbusers] OT VB.NET Vs VB6 > > Hola Pedro > > El equivalente al Static Multiuso de VB6 simplemente no existe en Net. > Lo mas parecido que tenes es lo que te envie. > > Que es lo que no funciono? o no te gusta la solucion? > > La unica diferencia con el caso en VB6 es que adelante va el nombre de la > calse que contiene el miembro Shadow. > > Por el resto es igual alvb6. > > Si en vb6 vos hacias: > > MiMetodo( parametro1, parmetro2) > > en este caso haras: > > MiClase.MiMetodo( parametro1, parmetro2) > > Fijate que en nunguna lado creo una variable de instancia del tipo MiClase. > *Nunca hago:* > > Dim mc as new MiClase > > MiMetodo es una miembro de clase pero *no de instancia*. > > Lamentablemenet aca en la oficina no tengo vb.net para armarte un > ejemplito. Una imagen vale mas que mil palabras.... :D > > Si queres contame que no te anduvo y marco el error, si es que lo veo :) > > Saludos > > Daniel Calvin > > > > > El 8 de agosto de 2008 17:11, Pedro R. Porcel de Peralta < > [EMAIL PROTECTED]> escribió: > >> Estimado Daniel, ante todo gracias por responder a mi inquietud (sigo >> sin resultado positivo) >> mi idea es realizar distintas funciones, propiedades, etc y que sean >> visibles con solo referencia el assembly en otros proyectos >> probé lo que me comentaste con el resultado antes mencionado >> >> Alguna otro idea? >> >> Saludos y gracias de antemano >> >> Pedro >> >> >> *From:* Daniel Calvin <[EMAIL PROTECTED]> >> *Sent:* Friday, August 08, 2008 11:29 AM >> *To:* vbusers List Member <[email protected]> >> *Subject:* [vbusers] OT VB.NET Vs VB6 >> >> En vb.net lo mas parecido a eso es el modificador Shared. >> >> Si adornas un miembro de una clase como Sahred este, sea metodo, >> propiedad, field, pasa aser comun a todas las ontsancias de la clase. >> Incluso se invoca sin instanciar la clase. >> >> Public Class shareTotal >> Public *Shared* total As Integer >> End Class >> >> Y se invoca: >> >> shareTotal.total >> >> Osea, nombre clase punto miembro Shared. >> >> Saludos >> >> Daniel Calvin >> >> 2008/8/8 Pedro R. Porcel de Peralta <[EMAIL PROTECTED]> >> >>> Estimados colisteros! buenos días, alguien podría decirme, de existir, >>> cuál es la manera de hacer una clase en vb.net que se comporte como la >>> Global Single Use de VB6? >>> >>> Les saluda muy Atte desde Rosario >>> >>> Pedro R. Porcel de Peralta >>> >>> >>> >> >> >> >> -- >> Daniel A. Calvin >> Cooperator Team Member >> http://www.cooperator.com.ar >> Microsoft Certified Professional >> > > > > -- > Daniel A. Calvin > Cooperator Team Member > http://www.cooperator.com.ar > Microsoft Certified Professional > -- Daniel A. Calvin Cooperator Team Member http://www.cooperator.com.ar Microsoft Certified Professional
