Bonjour,
J'ai dans l'idée de redessiner le style d'un Form.
J'ai trouver ici même et en cherchant sur Google beaucoup d'exemple qui definissent le FormBorderStyle à None, et qui dessine ensuite avec le Graphics du PaintEventArgs de l'évenement Paint.
Problème avec cette technique: move, resize et surtout contextMenu système disparaisse pour l'application.
J'ai réussi à réimplémenter le move et le resize grâce à la méthode WndProc.
Je me suis penché vers le dessin sur le Form avec le Graphics:
Graphics
.FromHdc(GetWindowDC(base.Handle));qui me permet de dessiner sur toute la fenêtre (Barre de titre compris). Mais là, problème de performance, et surtout de résultat(les controlBox sont redessinés lorsque le curseur passe dessus. J'ai la possibilité de désactiver le controlBox, mais à nouveau, problème de contextMenu.
Ma question est la suivante:
Cette méthode du FormBorderStyle None est-elle la meilleur?
Si oui, comment puije faire pour réassigner le contextMenu de l'application?
J'utilise Office 2007, pour ceux qui l'ont déja vu tourner sous Windows XP, le style de la fenêtre est différent du style utilisé par l'OS. On apercoit parfoit, lorsque Outlook traine un peu, que le style disparait de la barre de titre, pour laisser place au style utilisé par l'OS.
Je pense donc que la méthode avec
Graphics
.FromHdc(GetWindowDC(base.Handle));est la plus approprié.
Voilà, si quelqu'un a une idée, je l'étudierai volontier (l'idée)
Bonne journée