2008-12-27 6 views
5

J'ai trois valeurs à aligner dans une liste déroulante. Comment puis-je faire ceci? J'ai essayé ceci: String.Format("{0,-30}{1,-15}{2,-10}{3,-8}", new object[] { cusJob, service, username, time }); Mais cela le laisse inégal parce que ce n'est pas une police monospace. Je ne veux pas vraiment utiliser une police à espacement fixe et j'ai vu les applications aligner avant, alors comment puis-je le faire?Formatage de texte pour une liste déroulante, C#

Merci.

Répondre

5

Vous devez définir la DrawMode de DropDownList à OwnerDrawFixed et rendre les éléments dans le gestionnaire d'événements DrawItem.

Les exemples sont here et here et here, mais il y a beaucoup plus à trouver sur le web, si vous recherchez « colonnes dropdownlist OwnerDraw DrawMode ».

+0

Le troisième exemple a aidé le plus – Malfist

-1

Dans votre chaîne, vous pouvez utiliser le caractère de contrôle \ t pour afficher les valeurs, bien que d'autres manipulations de chaîne soient nécessaires pour déterminer le nombre d'onglets à placer dans la chaîne .

Edit: pour vb.net voir les ControlChars classe

+1

\ t apparaissent comme des petites boîtes au lieu des onglets, comme le font tous les caractères de contrôle – Malfist

Questions connexes