2009-09-23 8 views
1

Est-ce que quelqu'un a de bons indicateurs pour créer une chronologie personnalisée Silverlight?! En fait, il n'a même pas besoin d'être cette coutume, j'ai une table de base de données et chaque objet de cette table a un champ datetime appelé "CreateDate". Je souhaite utiliser ce champ pour assembler une chronologie, en affichant les autres champs pertinents à chaque point CreateDate spécifique ........C# Silverlight - Construire une chronologie?

Des conseils? Conseil? Aidez-moi? des échantillons?

Vive

Répondre

2

implémenter votre propre panneau Montage. C'est assez facile!

Les panneaux vous permettent de contrôler la disposition générale de ses enfants. Le ItemsControl par exemple expose une propriété appelée ItemsPanel qui est de type ItemsPanelTemplate. Par défaut, ItemsPanelTemplate contient un StackPanel vertical, mais peut être remplacé par votre superbe panneau Timeline. Ils sont la clé de n'importe quel calendrier est la coordonnée x. En utilisant le code ci-dessous pour calculer votre coordonnée x est la moitié de la bataille. Après c'est juste une question de déterminer le chevauchement de sorte que vous pouvez empiler correctement vos articles sur la timeline. L'Avanade Silverlight Accelerator dispose à la fois d'un contrôle de la timeline et d'un contrôle StackCalendar (pensez diagramme Gannt) qui fonctionnent très bien.

public double ScaleDate(DateTime date) 
    { 
     TimeSpan span = this.StopDate - this.StartDate; 
     TimeSpan pos = date - this.StartDate; 

     double posDays = double.Parse(pos.Days.ToString()); 
     double spanDays = double.Parse(span.Days.ToString()); 
     double x = posDays/spanDays; 

     return x; 
    } 
Questions connexes