Autor
|
Tema: Propiedades en C sharp (Leído 3,480 veces)
|
DanielPy
Desconectado
Mensajes: 145
|
Hola a todos. El código que les dejo a continuación tiene que ver en principio con las propiedades, que es lo que estoy estudiando en este momento,les sugeriría que me digan si el código(empleando propiedades) es correcto?.- Además la consulta es para ver si me pueden dar una mano con el siguiente error, si en "Ingrese nombre...:" aprieto la tecla Tab me acepta el dato como valido,eso no es correcto ¿como puedo solucionarlo?.- using C = System.Console; using System.Collections.Generic; using System.Linq; using System.Text; namespace Propiedades { class Program { static void configuracion() { C.Title = "Ejemplo del uso de propiedades en C Sharp"; C.SetWindowSize(70,30); C.BackgroundColor = System.ConsoleColor.Blue; C.ForegroundColor = System.ConsoleColor.Yellow; C.Clear(); } static void ingDatos() { Personas per = new Personas (); byte mLeft = 2, mTop = 2; while (true) { C.SetCursorPosition(mLeft, mTop); C.Write("Ingrese nombre.....:"); string linea = C.ReadLine(); if (string.IsNullOrEmpty(linea)) { mTop +=2; C.SetCursorPosition(mLeft, mTop); C.Write("El dato es obligatorio... (Pulse una tecla para continuar)"); C.ReadKey(); C.Write(" "); mTop -= 2; } else { per.nom = linea; break; } } mTop += 2; while (true) { C.SetCursorPosition(mLeft, mTop); C.Write("Ingrese apellido...:"); string linea = C.ReadLine(); if (string.IsNullOrEmpty(linea)) { mTop += 2; C.SetCursorPosition(mLeft,mTop); C.Write("El dato es obligatorio... (Pulse una tecla para continuar)"); C.ReadKey(); C.Write(" "); mTop -= 2; } else { per.ape = linea; break; } } mTop += 2; while (true) { byte n = 0; C.SetCursorPosition(mLeft, mTop); C.Write("Ingrese edad.......:"); if (byte.TryParse(C.ReadLine(), out n)) { per.eda = n; break; } else { mTop += 2; C.SetCursorPosition(mLeft, mTop); C.Write("Ingreso incorrecto... (Pulse una tecla para continuar)"); C.ReadKey(); C.Write(" "); mTop -= 2; } } } public class Personas { private string nombre; private string apellido; private byte edad; public string nom { get { return nombre; } set { nombre = value; } } public string ape { get { return apellido; } set { apellido = value; } } public byte eda { get { return edad; } set { edad = value; } } } static void Main(string[] args) { configuracion(); ingDatos(); C.SetCursorPosition(02,08); C.Write("Pulse una tecla para cerrar la aplicación..."); C.ReadLine(); } } }
Un gran saludo.- Daniel
|
|
|
En línea
|
abraza las cosas y personas malas como si fueran tu mas preciada joya,Son tus mas grandes maestros de paciencia sabiduría y amor y cuando lo abrazas dejan de causar dolor.-
|
|
|
43H4FH44H45H4CH49H56H45H
Wiki
Desconectado
Mensajes: 502
|
A la rapida puedes probar asi: using C = System.Console; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Propiedades { class Program { static void configuracion() { C.Title = "Ejemplo del uso de propiedades en C Sharp"; C.SetWindowSize(70, 30); C.BackgroundColor = System.ConsoleColor.Blue; C.ForegroundColor = System.ConsoleColor.Yellow; C.Clear(); } static bool bValido(string sCadena) { sCadena = sCadena.ToUpper(); if (string.IsNullOrEmpty(sCadena)) return false; for (int i = 0; i < sCadena.Length; i++) { char cTemp = Convert.ToChar(sCadena[i]); int iAscii = (int)cTemp; if (!bAscii(iAscii)) return false; } return true; } static bool bAscii(int iAscii) { if (iAscii < 65 || iAscii > 91) { return false; } return true; } static void ingDatos() { Personas per = new Personas (); byte mLeft = 2, mTop = 2; while (true) { C.SetCursorPosition(mLeft, mTop); C.Write("Ingrese nombre.....:"); string linea = C.ReadLine(); if (!bValido(linea)) { mTop += 2; C.SetCursorPosition(mLeft, mTop); C.Write("El dato es obligatorio... (Pulse una tecla para continuar)"); C.ReadKey(); C.Write(" "); mTop -= 2; } else { per.nom = linea; break; } } mTop += 2; while (true) { C.SetCursorPosition(mLeft, mTop); C.Write("Ingrese apellido...:"); string linea = C.ReadLine(); if (!bValido(linea)) { mTop += 2; C.SetCursorPosition(mLeft, mTop); C.Write("El dato es obligatorio... (Pulse una tecla para continuar)"); C.ReadKey(); C.Write(" "); mTop -= 2; } else { per.ape = linea; break; } } mTop += 2; while (true) { byte n = 0; C.SetCursorPosition(mLeft, mTop); C.Write("Ingrese edad.......:"); if (byte.TryParse(C.ReadLine(), out n)) { per.eda = n; break; } else { mTop += 2; C.SetCursorPosition(mLeft, mTop); C.Write("Ingreso incorrecto... (Pulse una tecla para continuar)"); C.ReadKey(); C.Write(" "); mTop -= 2; } } } public class Personas { private string nombre; private string apellido; private byte edad; public string nom { get { return nombre; } set { nombre = value; } } public string ape { get { return apellido; } set { apellido = value; } } public byte eda { get { return edad; } set { edad = value; } } } static void Main(string[] args) { configuracion(); ingDatos(); C.SetCursorPosition(02, 08); C.Write("Pulse una tecla para cerrar la aplicación..."); C.ReadLine(); } } }
Solo debe aceptar letras en nombre y apellido, hay que mejorarlo para lo que quieres.
|
|
|
En línea
|
-R IP :0100 -A 100 2826:0100 MOV AH,09 2826:0102 MOV DX,109 2826:0105 INT 21 2826:0105 MOV AH,08 2826:0105 INT 21 2826:0107 INT 20 2826:0109 DB 'MI NICK ES CODELIVE.$' 2826:0127 -R BX :0000 -R CX :20 -N CODELIVE.COM -W
|
|
|
DanielPy
Desconectado
Mensajes: 145
|
Hola. Funciona como lo deseado, solo que por el momento no entiendo del todo la lógica, eso no me ocupa de momento.- Solo 2 cositas, hay que mejorarlo para lo que quieres. podrías ser más especifico, la otra, me podrías(an) dar un ejemplo como poner los 2 métodos en otro archivo y como llamarlo?.-(quiero hacer de esto como una biblioteca para utilizar en todos los programas que los pueda aplicar).- Saludos y muchas gracias por tú tiempo.- Daniel
|
|
|
En línea
|
abraza las cosas y personas malas como si fueran tu mas preciada joya,Son tus mas grandes maestros de paciencia sabiduría y amor y cuando lo abrazas dejan de causar dolor.-
|
|
|
DanielPy
Desconectado
Mensajes: 145
|
Hola. Al fin viendo un vídeo de aprendiendo c sharp logré dividir el programa en 2 archivos.- Gracias y espero tú respuesta 43H4FH44H45H4CH49H56H45H.-
Saludos. Daniel
|
|
|
En línea
|
abraza las cosas y personas malas como si fueran tu mas preciada joya,Son tus mas grandes maestros de paciencia sabiduría y amor y cuando lo abrazas dejan de causar dolor.-
|
|
|
43H4FH44H45H4CH49H56H45H
Wiki
Desconectado
Mensajes: 502
|
Con mejorar solo me referia a que reconozca un espacio entre 1er y 2do nombre o 1er y 2do apellido, porque el codigo que puse no acepta espacios.
|
|
|
En línea
|
-R IP :0100 -A 100 2826:0100 MOV AH,09 2826:0102 MOV DX,109 2826:0105 INT 21 2826:0105 MOV AH,08 2826:0105 INT 21 2826:0107 INT 20 2826:0109 DB 'MI NICK ES CODELIVE.$' 2826:0127 -R BX :0000 -R CX :20 -N CODELIVE.COM -W
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Propiedades de xor???
Ingeniería Inversa
|
doblecero
|
6
|
8,442
|
3 Marzo 2004, 08:37 am
por Shaddy
|
|
|
propiedades
Diseño Gráfico
|
prosk8er
|
4
|
2,640
|
11 Junio 2004, 02:53 am
por Sub_Cero
|
|
|
Propiedades
.NET (C#, VB.NET, ASP)
|
anion
|
1
|
2,778
|
14 Julio 2007, 04:28 am
por MANULOMM
|
|
|
Propiedades de C#
.NET (C#, VB.NET, ASP)
|
olve
|
3
|
7,957
|
16 Diciembre 2009, 00:57 am
por raul338
|
|
|
Array y propiedades en c sharp
.NET (C#, VB.NET, ASP)
|
DanielPy
|
6
|
3,601
|
31 Julio 2013, 18:49 pm
por DanielPy
|
|