Lista de BCL en c# Espacio de nombres Utilidad de los datos que contiene System Tipos muy frecuentemente usados, como
Views 117 Downloads 6 File size 125KB
Lista de BCL en c# Espacio de nombres
Utilidad de los datos que contiene
System
Tipos muy frecuentemente usados, como los tipos basicos, tablas , excepciones, fechas, numeros aleatorios, recolector de basura , entrada y salida en consola, etc...
System.Collections
Colecciones de datos de uso comun como pilas, colas, listas, diccionarios, etc
System.Data
Manipulación de bases de datos. Forman la denominada arquitectura ADO.NET
System.Net
Realización de comunicaciones en red.
System.Reflection
Acceso a metadatos que acompañan a los módulos de código.
System.IO
Manipulación de ficheros y otros flujos de datos.
System.Runtime.Remoting
Acceso a objetos remotos.
System.Security
Acceso a la política de seguridad en que se basa el CLR.
System.Threading
Manipulación de hilos.
System.Web.UI.WebControls
Creación de interfaces de usuario basadas en ventanas para aplicaciones web
System.Winforms
Creacion de interfaces de usuario basadas en ventanas para aplicaciones estándar.
System.XML
Acceso a datos en formato XML
Common Type System (CTS) Modificador
Código desde el que es accesible el miembro
Public
Cualquier código
Private
Código del mismo tipo de dato
Family
Código del mismo tipo de dato o hijos de éste
Assembly
Código del mismo ensamblado
Family and assembly
Código del mismo tipo o de hijos de éste, ubicado en el mismo ensamblado
Family or assembly
Código del mismo tipo o hijos de éste, o código ubicado en el mismo ensamblado
El Common Language Specification (CLS) o Especificación del Lenguaje Común es un conjunto de reglas que han de seguir las definiciones de tipos que se hagan usando un determinado lenguaje gestionado si se desea que sean accesibles desde cualquier otro lenguaje gestionado. Obviamente, sólo es necesario seguir estas reglas en las definiciones de tipos y miembros que sean accesibles externamente, y no la en las de los privados. Además, si no importa la interoperabilidad entre lenguajes tampoco es necesario seguirlas. A continuación se listan algunas de reglas significativas del CLS: Los tipos de datos básicos admitidos son bool, char, byte, short, int, long, float, double, string y object Nótese pues que no todos los lenguajes tienen porqué admitir los tipos básicos enteros sin signo o el tipo decimal como lo hace C#. Las tablas han de tener una o más dimensiones, y el número de dimensiones de cada tabla ha de ser fijo. Además, han de indexarse empezando a contar desde 0. Se pueden definir tipos abstractos y tipos sellados. Los tipos sellados no pueden tener miembros abstractos. Las excepciones han de derivar de System.Exception, los delegados de System.Delegate, las enumeraciones de System.Enum, y los tipos por valor que no sean enumeraciones de System.ValueType. Los métodos de acceso a propiedades en que se traduzcan las definiciones get/set de éstas han de llamarse de la forma get_X y set_X respectivamente, donde X es el nombre de la propiedad; los de acceso a indizadores han de traducirse en métodos get_Item y setItem; y en el caso de los eventos, sus definiciones add/remove han de traducirse en métodos de add_X y remove_X. En las definiciones de atributos sólo pueden usarse enumeraciones o datos de los siguientes tipos: System.Type, string, char, bool, byte, short, int, long, float, double y object. En un mismo ámbito no se pueden definir varios identificadores cuyos nombres sólo difieran en la capitalización usada. De este modo se evitan problemas al acceder a ellos usando lenguajes no sensibles a mayúsculas. Las enumeraciones no pueden implementar interfaces, y todos sus campos han de ser estáticos y del mismo tipo. El tipo de los campos de una enumeración sólo puede ser uno de estos cuatro tipos básicos: byte, short, int o long.
La palabra static que antecede a la declaración del tipo de valor devuelto es un modificador del significado de la declaración de método que indica que el método está asociado a la clase dentro de la que se define y no a los objetos que se creen a partir de ella. Main() es lo que es denomina el punto de entrada de la aplicación, que no es más que el método por el que comenzará su ejecución. Necesita del modificador static para evitar que para llamarlo haya que crear algún objeto de la clase donde se haya definido.
Entendiendo los eventos más comunes en Windows Forms:
TextChanged : En los recuadros de texto (TextBox), ocurre cada vez que el usuario presiona una tecla o pega texto en la caja de texto. Se puede usar este evento para tratar con teclas específicas (tales como capturar teclas específicas) o cuando necesitas realizar una acción cada vez que el contenido cambie. MouseDown : Ocurre cuando el usuario presiona por primera vez el cuadro de texto. Se usa cuando se necesita mayor funcionalidad que la proveída por el evento click. MouseUp: Ocurre cuando el usuario libera el ratón de la caja de texto. MouseMove: Ocurre cuando el usuario mueve el ratón sobre la caja de texto.
Prefijos para variables Tipo de dato
Prefijo
Valor de ejemplo
Bool
Bln
BlnLoggedIn
Byte
Byt
BytAge
Char
Chr
ChrQuantity
Decimal
Dec
DecSalary
Double
Dbl
DblCalculateResult
Float
Flt
FltInterestRate
Long
Lng
LngCustomerID
Object
Obj
ObjWord
Short
Sho
ShototalParts
String
Str
strFirstName
Int
Int
IntLoopcounter
Casting(Conversión de tipos de datos)
Conversiones implícitas: TIPO
Conversion segura a:
byte
short, int, long, float, double, or decimal
short
int, long, float, double, or decimal
int
long, float, double, or decimal
long
float, double, or decimal
float
double
double
decimal
Para las conversiones explícitas se pueden usar los métodos de la clase Convert : dblVariable = Convert.ToDouble(intVariable);
Conceptos de depuración: F5-Continuar ejecución : Continúa la ejecución hasta el siguiente punto de ruptura . Una vez en el punto de ruptura... F11-Paso a paso: Ejecuta el código línea a línea. Si la ínea actual es una llamada a una función, entra en la función y ejecuta la primera línea de código. F10-Paso ligero: Ejecuta el código línea a línea. Si la línea actual es una llamada a una función, la ejecuta en su totalidad y se para en la primera línea de código fuera de la función. Shift+F5-salto: Ejecuta todas las líneas de código en la función actual y detiene la ejecución en la línea siguiente a la que llamó a la función actual. Tratamiento de excepciones
try: La sección try es donde se coloca el fragmento de código que es susceptible de fallo. Se pueden colocar todos los métodos dentro de excepciones. Catch: El código dentro de catch se ejecuta sólo cuando una excepción ocurre; es el codigo que se escribe para tratar de capturar la excepción. Finally: Código que se ejecuta cuando la ejecución de los catch y try se completan. Esta sección se reserva para el código limpio. (Código que siempre quieres que se ejecute, independientemente de que la excepción tenga lugar o no).
Hay tres estilos de tratamiento de excepciones : A try block followed by one or more catch blocks. . A try block followed by a finally block. . A try block followed by one or more catch blocks, followed by a finally block. Si algún otro fragmento de código causara alguna otra excepción, se puede parchear envolviendo dicho código en su propio try,catch.
POO La interface de una clase se compone de: Propiedades. Métodos; Eventos;
El método MessageBox MessageBox.Show(MessageText, Caption); MessageBox.Show(MessageText, Caption, Buttons); MessageBox.Show(MessageText, Caption, Buttons, Icon); Enumeraciones permitidas para el parámetro Buttons: AbortRetryIgnore Displays Abort, Retry, and Ignore buttons OK Displays an OK button only OKCancel Displays OK and Cancel buttons YesNoCancel Displays Yes, No, and Cancel buttons YesNo Displays Yes and No buttons RetryCancel Displays Retry and Cancel buttons
Enumeraciones comunes para el parámetro ICON: Exclamation Displays a symbol consisting of an exclamation point in a triangle with a yellow background Information Displays a symbol consisting of a lowercase letter i in a circle None Displays no symbol Question Displays a symbol consisting of a question mark in a circle Stop Displays a symbol consisting of a white X in a circle with a red background Warning Displays a symbol consisting of an exclamation point in a triangle with a yellow background
Trabajando con gráficos Visual c# se comunica con el GDI (Graphics Device Interface) a través de la clase Graphics. El proceso básico es el siguiente 1. Se crea una variable objeto de la clase Graphics para mantener la referencia al objeto Graphics de la forma. 2. La variable es asignada al objeto Graphics de la forma. 3. Para dibujar o imprimir, se llama a los métodos del objeto Graphics. Ejemplo: System.Drawing.Graphics objGraphics; objGraphics = this.textBox1.CreateGraphics(); Creando un objeto Graphics para un nuevo mapa de bits:
Bitmapvariable = new Bitmap(width, height, pixelformat); Valores comunes para pixelformat: Format16bppGrayScale . Format16bppRgb555
Format24bppRgb . Para hacer que los objetos dibujados permanezcan en la forma: Colocar todo el código relacionado en el evento Paint de la forma. Dibujar en memoria un Bitmap y copiar los contenidos de la memoria Bitmap en el evento Paint de la forma. Entendiendo la estructura del registro de Windows Principales nodos del registro de Windows: HKEY_CLASSES_ROOT :Contiene información que asocia tipos de de archivos con programas y datos de configuración de los componentes COM. HKEY_CURRENT_USER : Contiene información de configuración para el usuario actualmente logeado en el SO. HKEY_LOCAL_MACHINE: Contiene información específica de la configuración del ordenador. Independientemente del usuario conectado. HKEY_USERS: Contiene todos los perfiles de los usuarios de la computadora. Cuando un usuario se logea, HKEY_CURRENT_USER es asignado como un alias a un usUario especifico en HEKY_USERS. HKEY_CURRENT_CONFIG: Información sobre el perfil del hardware usado por el ordenador durante la sesión. Tipos de valores comunes en datos del registro: REG_SZ : El tipo primario de cadena de datos. Se usa para almacenar cadenas de longitud limitada u otros tipos de texto. REG_EXPAND_SZ : Tipo de cadena expandible para almacenar variables del sistema cuyos valores son resueltos en tiempo de ejecución. REG_MULTI_SZ: Almacena múltiples cadenas de texto en formato de array. Cada cadena se finaliza con un carácter nulo. REG_BINARY: Almacena datos en binario.
TRABAJANDO CON WPF
El control imagen:
EL URI puede ser tanto un recurso de disco local como de la web La propiedad Image.Stretch determina cómo se muestra una imagen: None : La imagen contenida se presenta en su tamaño original. Si es necesario, recortada para encajar en el espacio disponible. Fill: Cambia el tamaño para ajustarla al espacio disponible. Uniform : la imagen cambia de tamaño conservando sus proporciones, pero sin llenar completamente el espacio. UniformToFill: Como en uniform, la imagen conserva sus proporciones, pero se agranda hasta llenar todo el espacio disponible, para después ser recortada.
Control ProgressBar (Barra de progreso ): Diseñada para proveer de información gráfica de una tarea que lleve tiempo. Sus propiedades son: InsEnabled: Determina si está habilitada. IsIndeterminate: determina si la barra de progresos se enseña para el valor actual. Maximum: Cuando la propiedad “value” se iguala a Maximun, se llena. Minimun: Orientation; SmallChange: representra la cantidad añadida o sustraida de “value” cuando un pequeño cambio es requerido.
Value: El valor de progreso de la tarea en un momento dado.
Propiedades añadidas: Son propiedades que se incluyen en un control y que definen la relación y comportamiento con respecto al contenedor en el que están situados. Empaquetar URI:
Uniform Resource Identifier o URI (en español «identificador uniforme de recurso») es una cadena de caracteres corta que identifica inequívocamente un recurso (servicio, página, documento, dirección de correo electrónico, enciclopedia, etc.). Normalmente estos recursos son accesibles en una red o sistema. Los URI pueden ser localizadores uniformes de recursos, Uniform Resource Name, o ambos.
La sintaxis completa para acceder a un recurso desde WPF es: pack://// Donde Authority puede tener dos posibles valores. Puede ser tanto “application” - que indica que que la URI debería mirar en el ensamblado la aplicación actual se encuentra en los archivos de recursos o de contenido, o SiteOfOrigin, que indica a la aplicación debería mirar en la web de la aplicación para los archivos de recursos indicados.
Cualquier objeto declarado como “Resource” debe tener la propiedad x:KEY =”” Este es el nombre que otros objetos de WPF usarán para acceder al recurso. Para acceder a un recurso se usar la sintaxis {StaticResource myBrush} Diferencia entre staticResource y DinamicResource: Radica en cómo se recuperan los recursos los elementos que hacen la referencia. Los recursos referenciados por StaticResource se recuperan una vez y se usan durante la vida del recurso. Los que son referenciados dinámicamente son requeridos cada vez que el objeto referenciado es usado. Es decir, si el atributo de un objeto referenciado estáticamente, cambiara su estado en otro lugar del código éste, no acusaría el cambio, mientras que si la referencia fuera dinámica, el cambio tendría lugar.
Los diccionarios de recursos son colecciones de recursos que pueden ser accesibles e importables a la app. Para acceder a los diccionarios se debe añadir una referencia a los mismos en la colección resourceDiccionary.MergedDiccionaries. Ejemplo:
Trabajando con estilos: Tabla de propiedades de la clase Style: Propiedad
Descripción
BasedOn
Indica el nombre del estilo del que hereda el estilo actualmente.
Resources
Contiene un colección de recursos locales que usa el estilo.
Setter
Contiene una colección de Setters o EventSetters. Son usados para fijar los valores de las propiedades de controles o rejillas como parte del estilo.
TargetType
Indica a qué tipo de elemento se le aplica el estilo.
Triggers
Contiene una colección de disparadores y objetos relacionados que permiten aplicar el estilo cuando se produce un evento dado.