lunes, 20 de octubre de 2014

Programacion C# Control Menu

Introduccion


El control Menu permite desarrollar los menús presentados tanto estática como dinámicamente en las páginas web ASP.NET. Puede configurar el contenido del control Menu directamente en el control o puede especificar el contenido enlazando el control a un origen de datos.

 En un menú que se muestra de forma dinámica, sólo las partes que especifique son estáticas, mientras que sus elementos de menú infantil se muestran cuando el usuario hace click del ratón sobre el nodo padre.

Aplicacion

Usamos este control cuando queremos que nuestro diseño no sea desordenado y se mas amigable con el usuario. de esta amanera podemos englobar opciones de nuestra aplicación a la largo y ancho de nuestro control y mostrar los valores aparir de nodos padres e hijos de nuestro menu.

los nodos padres son los que son mostrados en la barra del menu directamente y estos pueden o no contener otros nodos que son llamados nodos hijos dentro de este menu. los nodos hijos pertenecen a un nodo padre y pueden contener a otros hijos




Para el menuSTrip existen elemento que pueden ser nodos y otros que solo seran controles a su vez los nodos o controles que pueden contener hijos pueden tener eventos  como por ejemplo evento dobleclic  evento mouseEnter entre otros vasta con revisar sus eventos en el cuadro de propiedades.

para colocarlo en el form solo basta con arrastrarlo y de imediato podremos trabajar en el





Controles que soporta el el menu 


exiten cuatro controles que soporta el MenuStrip y que estan disponibles para su seleccion en tiempo de diseño. todos ellos pueden ser accedido en tiempo de programación como objetos individuales sin tener que pasar por el MenuStrip que es el control que los contiene pero estos controles están anclados al menú es decir no se pueden mover de alli mas, si se puede alterar su orden.




MenuItem: 

este control tiene el comportamiento parecido de un botón con la hablilidad que puede contener nodos hijos (Es el único ) y es el mas comun de todos los controles dentro del MenuStrip


Como cualquier otro boton este puede tener el evento clic. En este caso tendremos un menuItem que sera padre de otros dos y cada uno de ellos tendra un evento clic




Fijese que entre los dos menuitem exite una barra esta es una barra de separacion la cual no ayuda visualmente a separa por ejemplo grupos de menuitems para el usuario


ComboBox: 

Este control es anclado al menu no da una lista desplegable la cual puede ser editada como cualquier otro COmboBox


Al igual que un combo box normal los items pueden ser editados tanto en diseño como en tiempo de ejecución como si nada  

TextBox:

funciona igual que un control TextBox todas sus propiedades pero con alguna limitaciones en sus eventos. Este Control esta anclado al menú



Ejemplo en ejecucion





Ejemplo


Ejercicio

intente realizar un usted mismo

Referencias y Ayuda





lunes, 13 de octubre de 2014

Analisis II Xml & Json

Xml

XML, siglas en inglés de eXtensible Markup Language ('lenguaje de marcas extensible'), es un lenguaje de marcas desarrollado por el World Wide Web Consortium (W3C) utilizado para almacenar datos en forma legible. Deriva del lenguaje SGML y permite definir la gramática de lenguajes específicos (de la misma manera que HTML es a su vez un lenguaje definido por SGML) para estructurar documentos grandes. A diferencia de otros lenguajes, XML da soporte a bases de datos, siendo útil cuando varias aplicaciones deben comunicarse entre sí o integrar información. 1

XML no ha nacido sólo para su aplicación para Internet, sino que se propone como un estándar para el intercambio de información estructurada entre diferentes plataformas. Se puede usar en bases de datos, editores de texto, hojas de cálculo y casi cualquier cosa imaginable.

XML es una tecnología sencilla que tiene a su alrededor otras que la complementan y la hacen mucho más grande y con unas posibilidades mucho mayores. Tiene un papel muy importante en la actualidad ya que permite la compatibilidad entre sistemas para compartir la información de una manera segura, fiable y fácil.

¿Para que sirve XML?


Representar información estructurada en la web (todos documentos), de modo que esta información pueda ser almacenada, transmitida, procesada, visualizada e impresa, por muy diversos tipos de aplicaciones y dispositivos.

Ventajas del XML


Es extensible: Después de diseñado y puesto en producción, es posible extender XML con la adición de nuevas etiquetas, de modo que se pueda continuar utilizando sin complicación alguna.

El analizador es un componente estándar, no es necesario crear un analizador específico para cada versión de lenguaje XML. Esto posibilita el empleo de cualquiera de los analizadores disponibles. De esta manera se evitan bugs y se acelera el desarrollo de aplicaciones.

Si un tercero decide usar un documento creado en XML, es sencillo entender su estructura y procesarla. Mejora la compatibilidad entre aplicaciones. Podemos comunicar aplicaciones de distintas plataformas, sin que importe el origen de los datos, es decir, podríamos tener una aplicación en Linux con una base de datos Postgres y comunicarla con otra aplicación en Windows y Base de Datos MS-SQL Server.

Transformamos datos en información, pues se le añade un significado concreto y los asociamos a un contexto, con lo cual tenemos flexibilidad para estructurar documentos.


¿Para que sirve XML?


Representar información estructurada en la web (todos documentos), de modo que esta información pueda ser almacenada, transmitida, procesada, visualizada e impresa, por muy diversos tipos de aplicaciones y dispositivos.


Características


XML es un subconjunto de SGML que incorpora las tres características más importantes de este:
  • Extensibilidad
  • Estructura
  • Validación
  • Basado en texto.
  • Orientado a los contenidos no presentación.
  • Las etiquetas se definen para crear los documentos, no tienen un significado preestablecido.
  • No es sustituto de HTML.
  • No existe un visor genérico de XML.

Estructura


Estructura




Ejemplo


<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE Edit_Mensaje SYSTEM "Edit_Mensaje.dtd">
 
<Edit_Mensaje>
     <Mensaje>
          <Remitente>
               <Nombre>Nombre del remitente</Nombre>
               <Mail> Correo del remitente </Mail>
          </Remitente>
          <Destinatario>
               <Nombre>Nombre del destinatario</Nombre>
               <Mail>Correo del destinatario</Mail>
          </Destinatario>
          <Texto>
               <Asunto>
                    Este es mi documento con una estructura muy sencilla 
                    no contiene atributos ni entidades...
               </Asunto>
               <Parrafo>
                    Este es mi documento con una estructura muy sencilla 
                    no contiene atributos ni entidades...
               </Parrafo>
          </Texto>
     </Mensaje>
</Edit_Mensaje>



Json


JSON, acrónimo de JavaScript Object Notation, es un formato ligero para el intercambio de datos. JSON es un subconjunto de la notación literal de objetos de JavaScript que no requiere el uso de XML.

La simplicidad de JSON ha dado lugar a la generalización de su uso, especialmente como alternativa a XML en AJAX. Una de las supuestas ventajas de JSON sobre XML como formato de intercambio de datos en este contexto es que es mucho más sencillo escribir un analizador sintáctico (parser) de JSON. En JavaScript, un texto JSON se puede analizar fácilmente usando la función eval(), lo cual ha sido fundamental para que JSON haya sido aceptado por parte de la comunidad de desarrolladores AJAX, debido a la ubicuidad de JavaScript en casi cualquier navegador web.

En la práctica, los argumentos a favor de la facilidad de desarrollo de analizadores o del rendimiento de los mismos son poco relevantes, debido a las cuestiones de seguridad que plantea el uso de eval() y el auge del procesamiento nativo de XML incorporado en los navegadores modernos. Por esa razón, JSON se emplea habitualmente en entornos donde el tamaño del flujo de datos entre cliente y servidor es de vital importancia (de aquí su uso por Yahoo, Google, etc, que atienden a millones de usuarios) cuando la fuente de datos es explícitamente de fiar y donde no es importante el no disponer de procesamiento XSLT para manipular los datos en el cliente.

Si bien es frecuente ver JSON posicionado contra XML, también es frecuente el uso de JSON y XML en la misma aplicación. Por ejemplo, una aplicación de cliente que integra datos de Google Maps con datos meteorológicos en SOAP hacen necesario soportar ambos formatos.

¿QUÉ ES Y PARA QUE SIRVE JSON?


JSON es un formato para el intercambios de datos, básicamente JSON describe los datos con una sintaxis dedicada que se usa para identificar y gestionar los datos. Una de las mayores ventajas que tiene el uso de JSON es que puede ser leído por cualquier lenguaje de programación. Por lo tanto, puede ser usado para el intercambio de información entre distintas tecnologías.

Veamos un sencillo ejemplo de JSON:

Imaginemos que tenemos una frutería  y que queremos obtener el nombre y la cantidad de fruta y verdura que tenemos. En un principio vamos a suponer que tenemos lo siguiente:

 – Fruta:

10 manzanas
20 Peras
30 Naranjas
 – Verduras

80 lechugas
15 tomates
50 pepinos


Ejemplo de JSON

 

JSON:

 {"menu": {
   "id": "file",
   "value": "File",
   "popup": {
     "menuitem": [
       {"value": "New", "onclick": "CreateNewDoc()"},
       {"value": "Open", "onclick": "OpenDoc()"},
       {"value": "Close", "onclick": "CloseDoc()"}
     ]
   }
 }
}

Ejemplo como XML:

  <menu id="file" value="File">
    <popup>
      <menuitem value="New" onclick="CreateNewDoc()" />
      <menuitem value="Open" onclick="OpenDoc()" />
      <menuitem value="Close" onclick="CloseDoc()" />
    </popup>
  </menu>

lunes, 6 de octubre de 2014

Programacion C# Data Grid View, Combo Box

Introducción

En la mayoría de los programa necesitamos trabajar con elementos como ventanas que nos muestran datos separados en columnas y filas y lista desplegables.Para este caso .net tiene su propios Controles, a las lista desplegables sera loa ComboBox y para las ventana que muestran elementos en filas y columnas tenemos los data grid view.




En ese ejercicio trabajaremos estos dos elemento asi que para ello agregaremos mas controles a nuestro form  de manera que su diceño puede quedar asi 

Combo Box

Empezaremos con este elemento pues es uno de los mas fáciles de controlar
Mas adelante adelante sus datos estarán enlazado con una base de datos.

para agregar un elemento a la combobox tenemos dos maneras una de ella es la manera grafica por la cual dandole click a la flecha del combobox no abrirá un menu contextual/editar elementos, el cual es forma lista y por cada enter sera un nuevo item en nuestro control


pero venimos a programar asi que nuestra manera sera por codigo dentro de un boton. asi que exitira un textbox y un label que nos servirá de mucho para controlar ese combobox.Tomaremos el boton "ingresar al comobobox y le crearemos el evento click. dentro de el  colocaremos este codigo 


el metodo add de la clase items solo agrega un elemento como la forma grafica ( solo texto a la lista)

pero la manera item.insert agrega un elemento con un indice,y su  segunda sobrecarga es solo el texto 

ademas de ello editaremos un eventos del combobox 


SelectionChangeCommitted  este evento nos permite ejecutar un bloque de código cuando se termina la selección de un item en el combo box. en el colocaremos esto


cuando ejecutemos este codigo un  label tendra el texto seleccionado de nuestro combobox en un label





Data Grid View 

vale una ves tengamos nuestro elemento de combo box iremos al datagrid view. Para empezar agregamos el evento load del form  y creamos un metodo no tipado para asi agregar las colunas que tendra nuestra grilla




una vez hecho esto  iremos al boton agregar a la grilla y le creamos su evento click en el colocaremos el llamado a un metodo que sera  "agregar_linea" 



Agregar_linea es un metodo que introduce valores a la grilla en forma de rows ( filas)

Vale pero algo que quiero agregar a importante en una grilla son sus propiedades



propiedades

2 Permite al usuario agregar un linea de estar en false solo podra por codigo. muy util para  controlar los valores dentro de la grilla


3 Permite al usuario borrar un fila entera en la grilla si esta true

4 cambia el color de fondo de la grilla

5 read only: esta propiedad es sumamente importante pues no permite editar  en tiempo de ejecion los valores de la grilla se recomienda esta siempre false para que estos valores esten protegidos 

al final de todo debe quedar asi =)


Ejercicio hecho





NestJs Error on SecretKey for JWToken

  Imagine this you are coding happy, configuring your module has   auth.module.ts   using on your register the classic call to get env value...