Jquery check all CheckBox

Hacía ya tiempo que no dedicaba ni un solo minuto a preparar una entrada para el blog, pero hoy me he plantado y le voy a dedicar un poco para solucionar una de las dudas que suelen salir en los foros de MMSDN.

Como seleccionar todos los checkBox de un DataList o un GridView, esto que puede parecer muy sencillo se nos puede complicar bastante si utilizamos directamente JavaScript, pero con JQuery solo necesitaremos una línea de código Si, solo una línea de código”.

Supongo que a estas alturas la gran mayoría ya conoce que es el la librería Jquery y las ventajas que nos ofrece al escribir nuestro código de cliente y sobre todo porque ahora nos permite tener inteligencie, sumando más potencia a esta productiva librería que os la podéis bajar desdehttp://jquery.com .

 

Lo primero que voy a hacer es crear una lista para enlazar los datos en el Datalist. No voy a entra en la mejor forma de crear datos ni validarlos simplemente utilizaré un tipo anónimo para realizar el ejemplo lo más simple y rápido posible ;-). Sigue leyendo

ASP.NET CODEBARS

En el foro de MSDN han consultado como poder  generar códigos de barra en una aplicación ASP.NET, yo hace bastante tiempo hice un ejemplo para una aplicación windows utilizando unas fuentes True Type para este menester y ahora haré lo mismo pero para una aplicación web.

El artículo original para Windows lo podéis encontrar en la web del guille en http://www.elguille.info/colabora/NET2006/Marckys_BarCode.htm .

Lo primero que voy a hacer es un proyecto web con una simple página donde podré introducir los datos para generar el código de barras y una combo para seleccionar las fuentes que me darán los diferentes formatos de código de barras.

La idea de esta utilidad es mostrar los datos en un formato de código de barras y la opción que he considerado más oportuna es generar una imagen con este texto y mostrarlo en la web como un simple control de servidor image de toda la vida.

Para poder realizar esto si tenernos que complicar muchísimo la vida. Lo mejor es crear un http handler que nos genere esta imagen y la muestre en el control.

Que es un HttpHandler ??

Pues un manejador de las solicitudes http que implementa la interface IHttpHandler y nos puede servir tanto para interceptar las llamadas de un fichero con una extensión en particular como para llamarlo directamente, como va a ser nuestro caso. Sigue leyendo

Como Validar un ListBox (CustomValidator)

Siguiendo con las respuestas en los foros hoy voy a explicar como poder validar si tenemos seleccionado un elemento de una lista.

http://forums.microsoft.com/MSDN-ES/ShowPost.aspx?PostID=3922327&SiteID=11

Para poder realizar esto de la forma más simple y que sea compatible con los otros validadores utilizaré un CustomValidator.

Crearé un formulario con una lista un customValidator y un botón para provocar la recarga de la página.

Para que la validación no influya en el rendimiento de la aplicación validaremos en el cliente y crearemos una función javascript para la validación. Sigue leyendo

[Asp.net] Editable Treeview II

Siguiendo con el anterior artículo de personalizar un TreeView I   para poder editar los nodos hoy veremos precisamente la parte donde habilitamos la edición de los nodos.

Crearemos una nueva clase que llamaremos TreeNodeEdit que heredara de TreeNode. Con esto ya tendremos la base para montar nuestro nodo editable.

[ToolboxData("<{0}:TreeNodeEdit runat=server></{0}:TreeNodeEdit>")]
public class TreeNodeEdit : TreeNode

Crearemos las propiedades públicas para poder configurar nuestro Nodo.

  • bool Editable –>Para hablilitar la edición del nodo.
  • string TextBoxValue –> Valor de la edición.
  • string OldValue –> Valor anterior a la edición.
  • string EditImageUrl –> Url del a imagen del botón editar.
  • string CancelImageUrl –> Url de la imagen del botón cancalar.
  • string SaveImageUrl –> Url de la imagen del botón guardar.
  • string EditTooltip –> Tooltip del botón editar.
  • string SaveTooltip –> Tooltip del botón guardar.
  • string CancelTooltip –> Tooltip del botón cancelar.
  • string TextBoxValueCSSView –> estilo del textbox de la edición. Sigue leyendo

[Asp.net] Editable Treeview I

En más de una ocasión nos ha sido de mucha utilidad un control del tipo TreeView para mostrar una jerarquía de datos, pero el control se nos puede quedar un poco limitado cuando pretendemos interactuar con los datos.

Por ese motivo he creado un control TreeView con nodos editables, y el resultado final es como este:

Comenzaremos creando un proyecto de librerías de clase para albergar nuestro control, a la clase le llamaremos TreeViewEdit y heredaremos de System.Web.UI.WebControls.TreeView.

[ToolboxData("<{0}:TreeViewEdit runat=server></{0}:TreeViewEdit>")]
public class TreeViewEdit : TreeView

Realmente toda la potencia del control no se encuentra en el TreeView, sino en los Nodos que le daremos la posibilidad de ser editados. En esta clase lo único que tenemos que hacer es un nuevo evento para capturar la información modificada del nodo. Sigue leyendo

Extender una propiedad de un ServerControl

Hoy una consulta en el foro MSDN me ha parecido muy interesante y por ese motivo y porque la explicación es un poco larga, describiré más detalladamente como poder hacer lo que Roberto Corona necesita.

http://forums.microsoft.com/MSDN-ES/ShowPost.aspx?PostID=3843776&SiteID=11

En resumen Roberto está creando un control de servidor del cual pretende que una propiedad muestre los botones que se encuentren en el formulario para poderlo seleccionar, al etilo de un validador.

Para hacer esto crearé un proyecto web para probar el control y otro proyecto que será el propio control de servidor. La clase del control la llamaré ServerControl1.cs, ya lo sé, muy poco original !!

El control es realmente sencillo:

Nuestro control heredará de WebControl y crearemos la propiedad ControlID para guardar el identificador del botón que queremos controlar Sigue leyendo

Asp.net PoPup sin JavaScript !!!

En ASP siempre que hemos querido abrir una nueva ventana desde un botón, imageButton, etc. Hemos tenido que echar mano de JavaScript para poder abrir un nuevo navegador.

Pero hay un truco que podemos utilizar directamente desde asp.net y que gracias a la propiedad Target del formulario podemos definir como queremos que se muestre la página web.

protected void Page_Load(object sender, EventArgs e)
{
    if(!IsPostBack)
        this.Form.Target = "_blank";
}

Para hacer la prueba hemos definido la propiedad Target del formulario como _blank  y cada vez que recargemos la página lo hará en una nueva ventana. Si le damos un par de vueltas a esta propiedad le podemos sacar mucho partido.

Otra manera de hacer lo mismo pero que solo afecte por ejemplo cuando hacemos click en un botón y no siempre que recargamos la página sería. Sigue leyendo

Posicion Relativa – Absoluta en VS

Hoy me he encontrado con una pregunta que me parece muy interesante en el foro de MSDN.

Como poder definir en nuestro Visual Studio poder trabajar siempre con nuestros formularios ASP.NET de forma relativa y no de forma absoluta.

http://forums.microsoft.com/MSDN-ES/ShowPost.aspx?PostID=3660415&SiteID=11

La solución es muy sencilla Herramientas –> Opciones –> Diseñador HTML –> Posición CSS –> Opciones de Posición

De esta manera podemos definir si nuestros controles dentro del formulario HTML se alinearán de forma Absoluta  o de forma relativa de forma predeterminada.

Saludos

Añadido:

  • Posición Absoluta: Al control se le define la posición exacta X,Y en el documento, ya sea por sus propiedades o desde las herramientas visuales. El control siempre estará en la misma posición independientemente de la resolución o el tamaño del navegador.
  • Posición Relativa: Los controles se posicionan dependiendo de la posición de los otros controles en el documento, de esta manera puede variar su posición dependiendo de la resolución o si modificamos el tamaño del navegador.

AJAX TabControl – Tabs Optimizados II

En un artículo anterior explique como optimizar los TabPanels de ASP.NET AJAX Control Toolkit sin tener que extender ni modificar una línea de código, tan solo aprovechando la funcionalidad del UpdatePanel y cargar la información de los tabs solo cuando se selecciona y no cargar todos los datos al principio.

Pero si utilizas este truco junto a un UpdatePogress te das cuenta que al cargar la primera vez los datos no muestra el contenido del UpdatePogress y da una mala sensación de retraso al mostrar los datos.

Pero si luego lanzamos eventos que actualizan el UpdatePanel si se muestra el UpdatePogress correctamente. Sigue leyendo

Donde está la pestaña de ASP.NET del IIS ???

Me encontraba yo instalando una aplicación Web ASP.NET 2.0 en Windows Server 2003 y al abrir el administrador del IIS no vi la pestaña de selección de la versión de ASP.NET. Lo primero que pensé fue que no tenía instalado el Microsoft Framework 2.0 o que tendría que reinstalarlo conAspnet_regiis.exepara que apareciera la tan querida pestaña.

Pero mi sorpresa aún fue mayor cuando descubrí que el servidor si tenía instalado el Framework 2.0, pero no solo eso, sino que también tenia la versión de 64bits, uff!!

Mi primera instalación en un servidor de 64 y ya comenzamos mal.

Después de navegar un poco por la red en busca de información sobre como solucionar mi problema vi soluciones muy rudimentarias como modificar el registro de Windows para trabajar con la versión correcta. Sigue leyendo