2010-10-19 6 views
5

J'ai un code comme celui-ci.C# applique la couleur à la police

System.Drawing.Color col = System.Drawing.ColorTranslator.FromHtml("#101B83"); 
System.Drawing.Font nameFont = new System.Drawing.Font("Tahoma", 10); 
System.Drawing.Font birthdayFont = new System.Drawing.Font("Tahoma", 6); 
System.Drawing.SolidBrush drawBrush = new System.Drawing.SolidBrush(System.Drawing.Color.Black); 
nameFont.Color = col; 

La dernière ligne ne fonctionne pas, car le champ .Color est introuvable. Pourquoi? Parce qu'une police n'a pas de couleur.

+0

Avez-vous déjà entendu parler de 'namespaces'? – Mike

Répondre

12

Un contrôle peut rendre le texte en utilisant une police et une couleur, mais la couleur n'est pas une propriété de la police.

EDIT:

Si vous voulez une zone de texte qui utilise une police donnée et la couleur que vous pouvez faire ce qui suit (je suppose que vous utilisez WinForms):

var myTextBox = new TextBox(); 
myTextBox.ForeColor = col; 
myTextBox.Font = birthdayFont; 
myTextBox.Text = "Happy birthday!"; 

this.Controls.Add(myTextBox); 
+0

J'ai vu un exemple d'utilisation de la couleur sur les tutoriels ... ok .. Comment faire ça avec Control? –

+0

@Toktik J'ai mis à jour ma réponse. –

2

les polices ne pas de couleurs. Vous utilisez des couleurs dans le code de dessin lui-même ou avec la propriété Control.ForeColor

1

définissez la couleur à la propriété ForeColor du contrôle. Cela définira la couleur désirée de votre police. Vous ne pouvez pas définir directement la couleur sur la police. vous devrez définir la police et l'forecolor séparément pour le contrôle.

Questions connexes