AntecedentesCómo enlazar un lienzo para una colección de artículos en Silverlight
Tengo una colección de objetos que quiero dibujar en un lienzo. Cada uno de estos objetos tiene una propiedad DateTime, que determina la posición de ese objeto a lo largo del eje x en el lienzo. Cada objeto también tiene otras propiedades que determinan la imagen que debe dibujarse en el lienzo. La característica más importante que quiero implementar es que a medida que pasa el tiempo por el segundo, estas imágenes que representan los objetos se moverán a lo largo del eje x. En otras palabras, el límite vertical derecho del lienzo siempre representaría la hora actual (por ejemplo, DateTime.Now), y los objetos en la colección necesitarían actualizar su posición en el lienzo relativo a ese límite. Soy muy nuevo en Silverlight y, por lo tanto, tengo bastantes preguntas, incluida la siguiente. Además, también tengo el requisito de seguir el marco de MVVM.
Preguntas
¿Qué debo usar en el XAML a achive lo anterior? Pensé en utilizar ItemsControl con Canvas como el Panel, pero no estoy seguro de cómo hacerlo o incluso si es la mejor manera. Cualquier código XAML real sería genial.
¿Cómo debo vincular la colección de objetos al lienzo? Y si es así, ¿cómo los muevo a lo largo del eje x a medida que pasa el tiempo? Es decir, me gustaría que el lienzo para actualizar cada vez que:
- hay objetos añadidos a la colección ; o
- objetos eliminados de la colección; o
- objeto existente cambiando (por ejemplo, algunos propiedad cambió y por lo tanto necesita cambiar la imagen que consiguen muestra en la lona) en la colección; o
- aunque no haya cambios en la colección como se mencionó anteriormente, estos objetos tendrán que moverse cada segundos.
Disculpa si he usado términos incorrectos para algo ya que todavía soy nuevo en Silverlight.
Gracias.
Véase también "Silverlight 3 - datos de posición de un rectángulo en un lienzo de unión": http://stackoverflow.com/questions/1637400/silverlight-3-data-binding-position-of-a-rectangle -on-a-canvas – Anthony