J'ai un champ dans une base de données, ce champ a une longueur maximale, et je veux définir une zone de texte à la largeur appropriée. Je crée les zones de texte en cours d'exécution. Comment puis-je calculer la valeur de la propriété width? Par exemple, si j'ai un champ nvarchar (5) nommé IDClient, et que la taille de police est 13, je veux créer une texbox avec une largeur suffisante pour écrire 5 caractères.Relation entre la longueur et la taille de police d'une chaîne et la largeur d'une zone de texte
0
A
Répondre
4
Peut-être devriez-vous utiliser TextRenderer.MeasureText(string, font).
Voici un petit échantillon qui devrait pourrait vous aider
//Get this value from somewhere...
TextBox textBox = new TextBox();
int maxWidth = 10;
int extraSpace = 3;
//Create sample string
StringBuilder sb = new StringBuilder(maxWidth);
sb.Append('w', maxWidth);
//Measure text
Size size = TextRenderer.MeasureText(sb.ToString(), textBox.Font);
//Set width of TextBox to needed width
textBox.Width = size.Width + extraSpace;
1
Spécifier
input type = 'texte' size = '5' width = 'w' ........>
Vous pouvez calculer w = num_characters * k. Où k est constant. D'abord, gardez k = 15. Ensuite, frappez et essayez jusqu'à ce que vous trouviez le meilleur ajustement.
Questions connexes
- 1. Comment calculer la largeur d'une chaîne de caractères d'une police et d'une taille de police spécifiques?
- 2. redimensionner taille de police dans la zone de texte automatiquement
- 3. Comment calculer la largeur de la police?
- 4. Déterminer basée sur quantité de texte et la taille de la police dans Winforms/C#
- 5. Valeur maximale en fonction de la taille de la longueur et de la longueur en .NET
- 6. Comment puis-je obtenir la largeur et la hauteur d'une chaîne de texte avec CAM :: PDF?
- 7. Réglage police et taille de police du texte de la barre de titre dans un UITableViewController
- 8. Diminuer dynamiquement la taille de la police dans une zone de texte
- 9. Comment modifier dynamiquement la taille de la police de texte dans UITextView dans l'iPhone
- 10. Zend_Pdf calculer la longueur de la chaîne de caractères dans la police courante pour l'enroulement de ligne
- 11. Ajuster par programme la taille de la police pour l'adapter au texte à l'intérieur d'une zone de texte dans Word
- 12. différence de taille de police entre opera et firefox
- 13. Texte Afficher le type et la taille de la police dans l'iphone
- 14. Flex: Modification de la zone de texte
- 15. Taille de la police de cellule UITableView
- 16. Comment calculer la taille d'un UIFont lorsque le texte de l'étiquette est contraint à la largeur?
- 17. Comment fixer la hauteur et la largeur d'une étiquette winforms pour accepter du texte de longueur variable
- 18. Flash AS2.0 - Augmenter la taille de la police de l'étiquette
- 19. Déterminer la police et la taille du texte à partir du HTML
- 20. Comment modifier la taille du texte et la largeur des composants d'un UIPickerView?
- 21. Taille de police limitée et execCommand
- 22. jeditable zone de texte largeur
- 23. Taille de la zone de texte dans Flash
- 24. Comment déterminer la taille d'une chaîne donnez la police actuelle dans wxWidgets
- 25. Définition de la taille de police par défaut et de la couleur d'arrière-plan dans TinyMCE
- 26. Augmenter la taille de la police dans la légende d'octave?
- 27. Unicode: Relation Entre le site Web multilingue (asp.net) et la police du navigateur et le système d'exploitation
- 28. Définition de la taille du texte sIFR
- 29. Blackberry réduire la taille de la police pour entrer dans la rangée fieldfield
- 30. Définition du nom et de la taille de la police dans le contrôle Liste AS3 (flash.controls.List)
Aussi, vous devez garder à l'esprit que jusqu'à la police est un type de courrier. Vous devez calculer k par la largeur de 'w'. Parce que c'est l'alphabet le plus large. –
Merci! Ok, laisse supposer que je trouve la valeur K parfaite pour size = 5. Que se passe-t-il lorsque la taille de la police change? Le problème est que je ne connais que la taille de la police en cours d'exécution. J'ai besoin d'un algorithme qui calc W en utilisant la taille et la longueur de la chaîne. – Jonathan
Je sais que ce n'est pas la meilleure approche. Mais vous pouvez le faire: w = num_chars * font_size * k; , puis trouvez k. Puisque la largeur sera directement proportionnelle à la taille de la police (de manière linéaire). Il existera une valeur valide de k pour une face de police. –