IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Silverlight Discussion :

Customiser le DatePicker


Sujet :

Silverlight

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut Customiser le DatePicker
    Hello tout le monde

    Le comportement par défaut du DatePicker ne me convient pas.
    J'ai défini un ensemble de BlackoutDates qui correspondent aux WE ainsi qu'aux jours de fermeture target.

    Prenons le datepicker par défaut, le user ouvre le calendrier et clique sur un jour sélectionnable.
    Maintenant, il modifie directement dans la textbox pour rajouter un an à la date précédemment sélectionnée. Sauf que cette nouvelle date tombe sur un jour Blackout. Le datepicker va alors revenir à l'ancienne date sans en informer le user.

    Autre problème, les jours blackout (marqués d'une croix grise par défaut) ne lève pas l'event SelectedDatesChanged.

    Voilà les 2 points qui me posent problème (enfin qui posent problème aux mecs en salle de marché)

    Ce que j'aimerais avoir: les jours blackout marqués par une croix (car c'est toujours sympa d'avoir un visuel des jours non sélectionnables) comme actuellement mais qui lévent l'event SelectedDatesChanged afin de pouvoir afficher le tooltip de validation.

    En gros, comment appliquer un style à certains jours du calendrier???

    Merci

  2. #2
    Membre Expert
    Avatar de Samuel Blanchard
    Homme Profil pro
    Expert .NET
    Inscrit en
    Février 2010
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Expert .NET

    Informations forums :
    Inscription : Février 2010
    Messages : 1 504
    Par défaut
    Salut lutecefalco !

    Pour ton problème de representation :

    Je pense que ce lien devrait t'aider à trouver la soluce à ton problème :

    http://blog.naviso.fr/wordpress/?p=186

    Cela marche sur un Calendar mais c'est le même principe sur un DatePicker normalement.

    Le principe est de redefinir le style des jours du calendar et d'y intégrer un Converter afin de customiser sa representation. Tu passes ensuite les jours qui t'intéressent au converter et le tour est joué.

    Pour ton problème de BlackOutDate :

    L'idée serait sans doute de ne pas les utiliser mais de vérifier plutot dès qu'une date est selectionné si elles correspondent bien à tes critères.

    Pour être plus précis :

    Une date est selectionnée.
    L'evenement SelectedDatesChanged est généré.
    Si la date ne doit pas être selectionné on trouve la premiere selectionnable et on l'affecte.

  3. #3
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Citation Envoyé par Samuel Blanchard Voir le message
    Salut lutecefalco !

    Pour ton problème de representation :

    Je pense que ce lien devrait t'aider à trouver la soluce à ton problème :

    http://blog.naviso.fr/wordpress/?p=186

    Cela marche sur un Calendar mais c'est le même principe sur un DatePicker normalement.

    Le principe est de redefinir le style des jours du calendar et d'y intégrer un Converter afin de customiser sa representation. Tu passes ensuite les jours qui t'intéressent au converter et le tour est joué.
    Sauf erreur de ma part, le DatePicker n'expose pas son calendar et donc pas le style CalendarDayButtonStyle

    Citation Envoyé par Samuel Blanchard Voir le message
    Pour ton problème de BlackOutDate :

    L'idée serait sans doute de ne pas les utiliser mais de vérifier plutot dès qu'une date est selectionné si elles correspondent bien à tes critères.

    Pour être plus précis :

    Une date est selectionnée.
    L'evenement SelectedDatesChanged est généré.
    Si la date ne doit pas être selectionné on trouve la premiere selectionnable et on l'affecte.
    Oui mais non, mes clients veulent que les dates non valides soient visibles mais quand même sélectionnable afin d'avoir un message d'erreur en cas de sélection. Ils ne veulent surtout pas que la date qu'ils saisissent soit modifiée

  4. #4
    Membre Expert
    Avatar de Samuel Blanchard
    Homme Profil pro
    Expert .NET
    Inscrit en
    Février 2010
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Expert .NET

    Informations forums :
    Inscription : Février 2010
    Messages : 1 504
    Par défaut
    Sauf erreur de ma part, le DatePicker n'expose pas son calendar et donc pas le style CalendarDayButtonStyle
    DatePicker expose CalendarDayButtonStyle par le biais de sa propriété CalendarStyle.

    Oui mais non, mes clients veulent que les dates non valides soient visibles mais quand même sélectionnable afin d'avoir un message d'erreur en cas de sélection. Ils ne veulent surtout pas que la date qu'ils saisissent soit modifiée
    Tu rends tous tes jours selectionnables
    Tu les testes dans SelectedDatesChanged pour voir si ils sont correctes ou non
    si ils ne le sont pas tu generes un message d'erreur (par exemple en rajoutant un evenement perso de gestion d'erreur)

  5. #5
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Citation Envoyé par Samuel Blanchard Voir le message
    DatePicker expose CalendarDayButtonStyle par le biais de sa propriété CalendarStyle.
    Ok, je vais regarder ça de plus près

    Citation Envoyé par Samuel Blanchard Voir le message
    Tu rends tous tes jours selectionnables
    Tu les testes dans SelectedDatesChanged pour voir si ils sont correctes ou non
    si ils ne le sont pas tu generes un message d'erreur (par exemple en rajoutant un evenement perso de gestion d'erreur)
    C'est ce que j'ai fait et j'ai mis une CustomValidation sur la propriété bindée, ça marche nickel.
    Reste juste à mettre en surbrillance les jours en question. Ce qui semble faisable d'après ton point 1/

Discussions similaires

  1. [C#] Colonne Lien customisée
    Par Emdis dans le forum ASP.NET
    Réponses: 3
    Dernier message: 24/05/2005, 13h17
  2. [JTree] Customiser un DefaultMutableTreeNode...
    Par Pignoufy dans le forum Composants
    Réponses: 4
    Dernier message: 19/04/2005, 11h29
  3. [Composant] Customiser le graphisme
    Par Eternity dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 30/03/2005, 09h25
  4. [Débutant] Customisation d'Eclipse
    Par bonnefr dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 18/05/2004, 12h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo