2017-09-22 1 views
0

J'essaie de créer une classe InputBox en C# d'apparence et de fonction similaire à la MessageBox intégrée. L'une des grandes différences est maintenant dans la police du corps du texte:Winforms Police MessageBox

enter image description here

La boîte de dialogue dans le milieu est le MessageBox intégré. Celui sur le dessus est à moi, avec la police comme MS Sans Serif, 9pt. Le bas est aussi à moi, avec la police MS Sans Serif, 8.25pt. En utilisant n'importe quelle taille entre les résultats arrondis. J'ai essayé d'utiliser Tahoma, mais cela ne correspondait pas non plus.

Quelle est la police que MS utilise dans ses boîtes de dialogue Win10?

P.S. Je suis conscient que VB a quelque chose de similaire, mais je ne l'utilise pas depuis que je l'ai trouvé moche.

Répondre

5

Vous pouvez utiliser SystemFonts.MessageBoxFont:

label.Font = SystemFonts.MessageBoxFont; 

Cela vaut mieux que d'utiliser un nom de police spécifique, parce que la police de la boîte de message peut être personnalisé par l'utilisateur. En utilisant SystemFonts, vous utilisez toujours les valeurs que l'utilisateur a définies sur sa machine.

0

Utilisez MS Shell Dlg 2. Windows le mappera à celui que la version actuelle de Windows utilise.

+0

Je ne parviens pas à trouver cette police en tant qu'option dans le volet Propriétés de VS2017. Dois-je utiliser cela directement dans le code? Pourriez-vous fournir un exemple? – Hele