WPF - Como usar un Canvas como contenedor en un ItemsControl 

Una de las ventajas de WPF frente a WindowsForms es la cantidad de posibilidades y facilidades que te da para crear interfaces de usuario complejas.

 

En el siguiente ejemplo, veremos cómo usar un Canvas como contenedor de una lista para mostrar círculos posicionados libremente.

Usaremos la siguiente clase:

clip_image001

 

Y aquí la lista de cirulos que asignaremos al DataContext del control:

clip_image003

 

Ahora veamos el XAML encargado de mostrar los círculos:

clip_image005

 

Esto es lo que hemos hecho:

  • Hemos cambiado el Template del Panel para que sea un Canvas
  • Hemos cambiado el Template del Item para que sea un círculo y hemos hecho los Bindings con nuestra clase.
  • Hemos cambiado el Estilo del ContentPresenter del Item para cambiar la posición del ítem, también asociada a las propiedades de nuestra clase.

 

Y este es el resultado final:

clip_image006

 

Con este pequeño ejemplo podemos ver la potencia del motor de Binding de WPF, la facilidad para crear gráficos avanzados y la flexibilidad que nos ofrece la arquitectura de WPF. Todo esto además con gráficos vectoriales que se adaptarán automáticamente a la resolución de pantalla utilizada.

 

Alfredo Fernández

Miembro de Techdencias.Net

 
Si lo desea puede escribir un correo indicando el artículo y el autor al que va dirigido y realizar cuantas preguntas, sugerencias o comentarios desee. Le remitiremos contestación lo antes posible. ¡Muchas gracias!
Posted on 14-Jun-10 by Roberto Tapia

Tags: WPF
 

vínculos