none
Style visuel du calendrier mensuel inmodifiable RRS feed

  • Question

  • Bonjour,

    J’aimerais savoir s’il y a une astuce pour faire en sorte que le calendrier mensuel (« MonthCalendar ») accepte couleurs qui sont définies dans ses propriétés, en effet le calendrier reste toujours avec son style visuel initial. La lecture de divers articles sur internet ainsi que MSDN laissent penser qu’il devrait fonctionner normalement.

    Merci d’avance pour votre aide.


    BB
    vendredi 3 juin 2011 16:13

Réponses

Toutes les réponses

  • Bonjours

    Vous pouvez heriter du controle Month Calendar et re ecrire (je ne sais pas en français comment ce la est dit  override) la methode protégée protected

    OnPaint et OnPaintBackground

    Cordialement


    The complexity resides in the simplicity Follow me at: http://smartssolutions.blogspot.com
    dimanche 5 juin 2011 11:41
  • Bonjour MASNSN,

    Merci pour votre aimable réponse,

    Certes, je pourrait faire cela mais : étant donné que ces propriétés existent  de façon native pour ce contrôle, j'ai supposé qu'elle devait fonctionner normalement. Je voudrais donc savoir si d'aitres utilisateurs arrivent à les utiliser sans "tricher".

    Note : "To override" pourrait se traduire par "outrepasser", mais la majorité des développeurs utilisent les termes techniques Anglophones, donc votre terminologie etait parfaitement claire.

    amitiés,


    BB
    dimanche 5 juin 2011 12:23
  • Re Bonjours BerBuz

    Merci de me fournir la traduction technique du mot override. Pouvez vous me pointer sur les properiétés que vous assumez utiliser, je pourrait peut être donner un cout de main dans ce sens

    Cordialement


    The complexity resides in the simplicity Follow me at: http://smartssolutions.blogspot.com
    dimanche 5 juin 2011 12:55
  • Pour ce qui est de Override en c# voici la définition Msdn :

    http://msdn.microsoft.com/fr-fr/library/ebca9ah3(v=VS.100).aspx


    Cordialement, Pascal.

    Développeur Wpf/SilverLight/WinPhone7

    dimanche 5 juin 2011 13:47
  • Hi Masnsn,

    Just load the MonthCalendar on a WindowsForm then try to modify one of the color properties (there are 5 available). Do you see any change of the visual aspect? I don’t! I know how to try working around using OnPaint protected methods but I don’t want to do so before being sure that the problem is not sourced from my own configuration (bad DLL version or anything like this).  My purpose was to see if this control behaves the same way for other developers. I’ll be really happy if you could try.

    Regards.

     


    BB
    dimanche 5 juin 2011 14:37
  • Bonjours pascal

    Merci Pascal, le concept de l'override je le connais  techniquement mais sa traduction en français qui m'échappe ; )

    Cordialement


    The complexity resides in the simplicity Follow me at: http://smartssolutions.blogspot.com
    dimanche 5 juin 2011 16:43
  • Hi Masnsn,

     

    Just load the MonthCalendar on a WindowsForm then try to modify one of the color properties (there are 5 available). Do you see any change of the visual aspect? I don’t! I know how to try working around using OnPaint protected methods but I don’t want to do so before being sure that the problem is not sourced from my own configuration (bad DLL version or anything like this).  My purpose was to see if this control behaves the same way for other developers. I’ll be really happy if you could try.

    Regards.

     


    BB

    Il parait que j'ai le même probleme que le votre

    The complexity resides in the simplicity Follow me at: http://smartssolutions.blogspot.com
    dimanche 5 juin 2011 16:44
  • Merci beaucoup pour votre aide Masnsn.
    BB
    lundi 6 juin 2011 10:22
  • Pas de quoi, you're welcome
    The complexity resides in the simplicity Follow me at: http://smartssolutions.blogspot.com
    lundi 6 juin 2011 20:48
  • Bonjour, BerBuz,

    Vous êtes sur un forum sur lequel on utilise la langue française pour communiquer. Svp utilisez seulement cette langue sur les forums MSDN France.

    Bien sûr que vous pouvez citer ou écrire certain mots en anglais, mais pour éviter les confusions je vous en prie d’utiliser seulement la langue française pour communiquer sur nos forums.

    Merci pour votre compréhension et collaboration.

    Bonne journée,

    Cipri


    Suivez MSDN sur Twitter   Suivez MSDN sur Facebook


    Ciprian DUDUIALA, MSFT  
    •Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.

    mardi 7 juin 2011 06:36
  • Bonjour, BerBuz,

    Un autre utilisateur offre une solution pour ce problème sur le forum MSDN des Etats-Unis. Essayez cette solution et dites-nous svp si le control MonthCalendar fonctionne bien.

    Bonne journée,

    Cipri


    Suivez MSDN sur Twitter   Suivez MSDN sur Facebook


    Ciprian DUDUIALA, MSFT  
    •Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.

    • Marqué comme réponse BerBuz mardi 7 juin 2011 09:01
    mardi 7 juin 2011 06:43
  • Chiffre

    Bonjour

     

    'Largeur hauteur


         

    Me.MonthCalendar1.Size = New System.Drawing.Size(249, 162)

         

    Me.MonthCalendar1.Visible = True


         

    'Enplacement du calendrier


         

    'Me.MonthCalendar1.Location = New System.Drawing.Point(9, 9)


         

    Me.MonthCalendar1.Location = New System.Drawing.Size(20, 14)

         

    'Configurer le calendrier pour afficher 1 rangée de haut par 1 colonne de mois.


         

    Me.MonthCalendar1.CalendarDimensions = New System.Drawing.Size(1, 1)

         

    'Indique premier jour de la semaine


         

    'Me.MonthCalendar1.FirstDayOfWeek = System.Windows.Forms.Day.Sunday


         

    'Date de la semaine


         

    Me.MonthCalendar1.ShowWeekNumbers = True


         

    '---------------------------------


         

    '---------------------------------


         

    'Change de color.


         

    'La couleur d'une partie du fond en haut du calendrier


         

    'Il ne faut pas mettre la mème couleur que le calendrier


         

    Me.MonthCalendar1.BackColor = System.Drawing.Color.Beige

         

    'La couleur du fond du calendrier


         

    'Il ne faut pas mettre la mème couleur que le calendrier


         

    Me.MonthCalendar1.TitleBackColor = System.Drawing.Color.CadetBlue

         

    '---------------------------------


         

    '---------------------------------


         

    'La couleur du texte


         

    Me.MonthCalendar1.ForeColor = System.Drawing.Color.Black

         

    'La couleur du texte dans le titre du calendrier


         

    Me.MonthCalendar1.TitleForeColor = System.Drawing.Color.Black

         

    'La couleur du texte des mois


         

    Me.MonthCalendar1.TrailingForeColor = System.Drawing.Color.Maroon

         

    'La police du texte


         

    Me.MonthCalendar1.Font = New System.Drawing.Font("arial", 10, FontStyle.Regular)

         

    'Définir le calendrier, se déplacer d'un mois à la fois lors de la navigation à l'aide des flèches.


         

    Me.MonthCalendar1.ScrollChange = 0

         

    'Afficher la bannière contour en bas du texte la journée écrit "Aujourd'hui"     


         

    Me.MonthCalendar1.ShowToday = True


         

    'Le jour actuel


         

    Me.MonthCalendar1.TodayDate = Date.Today

         

    'Définit une valeur indiquant si le contrôle Month Calendar affiche numérotation des semaines (1-52)


         

    Me.MonthCalendar1.ShowWeekNumbers = True


         

    'le nombre de jour total qui peuvent ètre sélectionner


         

    Me.MonthCalendar1.MaxSelectionCount = (7)

         

    'Indique le positionnement de l'ancrage d'un contrôle left


         

    'Mais ce code non, il dédouble les Calendriers


         

    'Me.MonthCalendar1.Dock = DockStyle.Left


         

    'JeanMarcSim2016 ,Create the calendar.


         

    'Si déja visible ne pas mettre un autre calendrier


         

    'Me.MonthCalendar1 = New System.Windows.Forms.MonthCalendar

    JeanMarc

    jeudi 3 mars 2016 15:55