JASoft.org

El blog de José Manuel Alarcón Aguín. Programación web y mucho más...

MENÚ - JASoft: JM Alarcón

La manera correcta de actualizar contadores de rendimiento personalizados

Esta es una pregunta interesante que ha surgido en el curso de fundamentos de la plataforma .NET que tutelo on-line en campusMVP. Se trata de una pregunta sencilla pero con una sutileza interesante respecto a la creación de contadores de rendimiento para Windows desde .NET. Cuando creamos un contador personalizado en .NET incrementamos o disminuimos su valor para actualizar la medición que queremos reflejar en el contador de rendimiento del sistema. Algunos ejemplos de contadores que podemos crear son: uno que indique el número de usuarios actualmente autenticados en nuestra aplicación Web, uno que indique el número de compras realizadas en una tienda on-line, el promedio de consultas lanzadas contra un almacén de datos, etc, etc... Tienen mucha utilidad ya que nos permiten monitorizar con las herramientas propias de Windows el desempeño de nuestras aplicaciones, tanto en tiempo real como haciendo trazas para un análisis posterior. El caso es que todos ellos implican generalmente e... [Más]

Como incluir cambios de línea en los Tooltips

Hoy como es huelga general en España, un truco rapidito para que no nos tachen de esquiroles :-P Los Tooltips son esas etiquetas flotantes que aparecen cuando dejas el cursor del ratón unos instantes parado encima de algún control de tu aplicación, y que normalmente te dan información contextual interesante sobre el mismo: Son muy útiles en las aplicaciones Windows Forms, pero ¿Cómo podemos hacer para que un Tooltip se muestre como el de la figura anterior, es decir, en varias líneas? Lo primero que cabría pensar es que podríamos poner un “\n” como se hace en las constantes de cadena de C#, así: NotifyIcon1.Text = “DOTNET4\nInternet access”; Pero no funciona y veríamos realmente ese “\n” en el texto. La solución es concatenarle en cada cambio de línea la constante: Environment.NewLine con lo que quedaría algo así: NotifyIcon1.Text = “DOTNET4” + Environment.NewLine + “Internet access”; ¡Listo! Con esto conseguirás Tooltips como los de la figura superior, mucho más cómodo... [Más]

Resolver el error “No se puede encontrar el tipo” al cargar un formulario con un control propio

Yo no programo demasiado para Windows Forms, ya sabéis que lo mío es más la Web. Pero últimamente estoy trabajando a los ratos en un proyecto que tienen una parte de visualización para escritorio hecha con esta tecnología. Como soy partidario de reutilizar al máximo, siempre encapsulo la funcionalidad todo lo que puedo, incluyendo funcionalidad de la interfaz de usuario. Por eso en este trabajo, tengo varios controles de usuario listos para arrastrar y soltar en cualquier formulario que los requiera. El caso es que tras haber trasteado bastante con la interfaz, de repente algunos formularios me empezaron a fallar, mostrándome un error como el de la figura (yo trabajo con todo en inglés, incluidos los nombres de clases  y variables):  (la parte difusa lleva el nombre del control que no se carga y su espacio de nombres) A pesar de que en el código del diseñador del formulario todo parecía estar bien y se reconoce el tipo del control y a pesar de que si ejecutas la aplicación... [Más]

Uso de la caché de ASP.NET 4.0 fuera de aplicaciones Web - Perfiles de .NET

La caché de ASP.NET es una maravilla. Permite almacenar en memoria (o en otra ubicación, ya que es extensible) datos costosos de obtener y que no caduquen de inmediato. De esta forma las siguientes veces que debamos utilizarlos en la misma aplicación podremos obtenerlos desde la caché sin necesidad de volver a calcularlos o generarlos. Además la caché de ASP.NET ofrece un montón de características avanzadas que van más allá del simple almacenamiento. Por ejemplo podemos establecer caducidades de la información tanto en un determinado momento en el futuro, si no se utiliza tras un periodo, haciendo que unas informaciones dependan del valor de otras o creando dependencias de ciertos elementos externos (como un archivo, una consulta en la base de datos o una clave del registro). Esto último es de especial interés, pues nos brinda la posibilidad de hacer cosas bastante complicadas sin apenas código. Por ejemplo, si nuestra aplicación depende de la información almacenada en un archivo en e... [Más]

Habilitar auto-completar en controles de Windows Forms

Se trata éste de un truco muy útil y  muy sencillo, si bien muchos programadores desconocen. En la versión 2.0 de la plataforma .NET algunos controles para interfaz de usuario con Windows Forms (en concreto los cuadros de texto y los combos, tanto los normales como los que van dentro de los ToolStrip), permiten mostrar a los usuarios sugerencias acerca de los datos que están introduciendo de una manera muy sencilla. Esta caraterística no estaba presente en la versión 1.x de la plataforma. Para ello basta con seleccionar el control en cuestión y ajustar sus propiedades AutoCompleteMode y AutoCompleteSource (ver figura lateral). La primera nos sirve para indicar de qué modo se hara el auto-rellenado. Puede ser simplemente una sugerencia desplegada por debajo (estilo navegador Web), que el texto se vaya autocompletando automáticamente dentro del control o ambas cosas. La propiedad AutoCompleteSource sirve para indicar de dónde se sacarán las sugerencias de rellenado automático. P... [Más]