December 2008 - Posts

Muchas Felicidades, que terminen bien el año y que el próximo sea muchísimo mejor que este y se cumplan todos sus objetivos.

Ahora voy a disfrutar de mis vacaciones, y para mediados de Enero volveré con mucha más información y ejemplos de Silverlight.

Para que disfruten les dejo esta postal navideña hecha por Microsoft, la cual esta desarrollada con DeepZoom. El link esta aquí.

Saludos

Santiago

Joe Stegman ha dado una excelente solución a varios temas que había entre Silverlight y Opera.

Los problemas que suceden con el plug-in son lo siguientes:

  • Utilizar el control Silverlight via el MS Ajax. La solución que da en el post, es la de crear el objeto a través del tag object y no utilizando MS Ajax.
  • Silverlight no funciona en modo “windowless”. Opera muestra una página en blanco, donde aparece el cuadro de “Click to activate and use this control”. La única solución es no utilizar el modo “windowless” ya que tanto el equipo de Microsoft como el de Opera no han reportado una solución a este problema.
  • El control TextBox no puede recibir foco, por lo tanto no se puede seleccionar o cambiar un texto). Por el momento tampoco hay una solución a este problema.

Recomiendo leer el siguiente post, para tener más información sobre los browsers y su comportamiento con el plug-in de Silverlight.

Leyendo el blog de Brad Abrams, leo que ha salido una actualización del control DataGrid para Silverlight, donde se han corregido varios bugs que tenía.

Algunas de las cosas que se han corregido son:

  • La fila que tiene el foco, no desaparece cuando se cambia el ItemsSource.
  • Cuando algunos abren un Pop-Up, ahora funciona correctamente.
  • La selección hecha en un DataGrid se mantiene al cambiar el orden de las filas.
  • Al hacer click en botones fuera del DataGrid, no nos tira error cuando estamos en modo edición en el DataGrid.
  • Varias más…

El listado completo con todas las correciones lo pueden encontrar aquí.

Las instrucciones para instalarlo son las siguientes:

  1. Cerrar todas las instancias de Visual Studio.
  2. Borrar todos los items del toolbox que estén cacheados. Para esto deben borrar todos los archivos que empiecen con la palabra “toolbox” en el directorio “%LocalAppData%\Microsoft\VisualStudio\9.0”.

    • Para Windows XP, %LocalAppData% es “Documents and Settings\UserName\LocaRl Settings\Application Data”.
    • Para Windows Vista es %LocalAppData% es “Users\UserName\AppData\Local”.

  3. Descargar el paquete de instalación aquí.
  4. Reemplazar las siguientes librerías por las que vienen en el paquete

    • %ProgramFiles%\Microsoft SDKs\Silverlight\v2.0\Libraries\Client\System.Windows.Controls.Data.dll
    • %ProgramFiles%\Microsoft SDKs\Silverlight\v2.0\Libraries\Client\System.Windows.Controls.Data.Design.dll

  5. Para todos los proyecto existentes, quitar la referencia a System.Windows.Controls.Data.dll y luego volver a agregarla.

Blacklight es una seria de controles para Silverlight y WPF, orientados a los diseñadores.

Lo bueno de estos controles es que están realizados por expertos en UX (User Experience), focalizados en mostrar las cualidades de la tecnología para mejorar la UX de las aplicaciones.

Estos controles se pueden descargar y utilizar, así mismo podemos ver el código fuente y retocarlo si es que lo necesitamos, siempre bajo las condiciones de la Microsoft Public License.

Hay ejemplos sobre bordeado y sombreado, drag-drop de Panels, animaciones para agregar o remover controles de un Panel y otras cositas más.

Pueden ver los ejemplos y saber más sobre los mismos esta aquí.

1 4 3

5

Cuando empecé a utilizar Silverlight, mi primer objetivo era implementar un slide de imágenes. Buscando por donde empezar me encontré con un proyecto en CodePlex que era exactamente lo que estaba buscando, donde me permitía descargar el código fuente y poder empezar a retocarlo.

Revisando un poco los proyectos que hay en CodePlex, me encuentro con la actualización de esta aplicación, la cual se llama Slide.Show 2.

Esta versión esta mejorada y es un buen punto de comienzo, ya sea para utilizar directamente en nuestra aplicación, así como para ver como esta desarrollada una aplicación en Silverlight.

Es totalmente customizable vía XML, se pueden visualizar imágenes y videos, tiene modo pantalla completa, obtiene información de un XML o Flickr u otros proveedores, varias transiciones para utilizar y muchas cosas más.

Este proyecto fue desarrollado por la gente de Vertigo y pueden visualizarlo aquí.

screenshot_slide

screenshot_album

Fons Sonnemans ha desarrollado un aplicación muy interesante y útil, que nos permite verificar si un sitio de donde queremos consumir datos e información desde nuestra aplicación Silverlight, tiene los archivos Clientaccesspolicy.xml y Crossdomain.xml y cual es la configuración de los mismos.

De esta manera podemos verificar si podemos o no acceder a estos datos.

El link para poder utiizar esta herramienta esta aquí.

PolicyChecker

Uno de los controles que trae Silverlight, es el PasswordBox. Este control nos sirve para cargar claves, ya que oculta los caracteres que escribe el usuario.

La siguiente es la declaración en el xaml del control

<PasswordBox Canvas.Top="20" x:Name="passUsuario" Width="200"></PasswordBox>

Al visualizar el ejemplo, nos damos cuenta que por defecto Silverlight utiliza circulos para ocultar los caracteres.

DibujoEl control tiene una propiedad que nos permite definir cual es el carácter que nosotros queremos utilizar para ocultar lo que el usuario escribe.

<PasswordBox Canvas.Top="20" x:Name="passUsuario" Width="200" PasswordChar="*">
</PasswordBox>

Como vemos, la propiedad PasswordChar define el carácter a mostrar.

Dibujo2

Ahora bien, desde el código vamos a acceder al texto cargado por el usuario mediante la propiedad Password.

string prueba = passUsuario.Password;

 De esta manera, fácilmente podemos agregar este control y utilizarlo para pedir claves a los usuarios de nuestra aplicación.

Se ha encontrado un bug al intentar cambiar la fuente y el texto de un TextBox en forma dinámica. Esto pasa solamente si primero cambiamos la fuente y luego el texto del control, si invertimos el orden este error no sucede.

Este es el xaml donde defino el control a utilizar

<Canvas>
  <TextBox x:Name="TestBox1" Text="Hola!!!!" FontFamily="Arial"></TextBox>
  <Button x:Name="cambiarFuente" Content="Probar"
          Click="cambiarFuente_Click"></Button>
</Canvas>

Este el código fuente que da error al ejecutarse

private void cambiarFuente_Click(object sender, RoutedEventArgs e)
{
    TestBox1.FontFamily = new FontFamily("Arial");
    TestBox1.Text = Guid.NewGuid().ToString();
}

Tengan cuidado si van a realizar un cambio de fuente dinámicamente en un TextBox ya que si luego cambian el texto, va a colgar la aplicación.

He encontrado esta aplicación que me pareció impresionante, ya que utiliza los servicios de Virtual Earth aplicados en Silverlight 2 y utilizando las bondades de Deep Zoom.

Lo más interesante de esta aplicación es que podemos bajarnos el código fuente ya sea para revisarlo y ver como esta desarrollado como para agregarle funcionalidad que nos parezca interesante.

El link para descargar el código fuente y ver el roadmap de la aplicación esta aquí.

DeepEarthScreen1

Pueden visualizar un ejemplo de la aplicación aquí.

Felicitaciones al equipo que ha desarrollado esta aplicación!!!!

Para todos aquellos que quieren empezar a utilizar Silverlight como medio publicitario en la web, hay un documento muy interesante que nos muestra una guía de como empezar a emplearlo, además de servir como herramienta para aquellas personas que crean, hostean o trackean publicidades.

Por ejemplo, estas son algunas de las cosas que describe el documento:

  • Cross-Domain hosting.
  • Integrar publicidades Silverlight en Sistemas de Administración de Contenidos (CMS).
  • Manejar y publicar publicidades con Deep Zoom.
  • Tracking de publicidades.
  • Sincronización de varias publicidades Silverlight dentro una misma página Web.
  • Distintas alternativas para los usuarios que no tienen instalado el plug-in.

El documento esta en inglés y lo pueden descargar desde aquí.

More Posts Next page »