J'essaie de placer un fichier RichTextBox WPF afin de contenir exactement une grille de caractères dans une police monospace particulière. J'utilise actuellement FormattedText pour déterminer la largeur et la hauteur de mon RichTextBox, mais les mesures qu'il me fournit sont trop petites - en particulier deux caractères de largeur trop petite.Définition de la largeur et de la hauteur de la RichTextBox de WPF en fonction de la taille d'une police monospace
Existe-t-il une meilleure façon d'effectuer cette tâche? Cela ne semble pas être un moyen approprié pour déterminer la taille de mon contrôle.
RichTextBox rtb;
rtb = new RichTextBox();
FontFamily fontFamily = new FontFamily("Consolas");
double fontSize = 16;
char standardizationCharacter = 'X';
String standardizationLine = "";
for(long loop = 0; loop < columns; loop ++) {
standardizationLine += standardizationCharacter;
}
standardizationLine += Environment.NewLine;
String standardizationString = "";
for(long loop = 0; loop < rows; loop ++) {
standardizationString += standardizationLine;
}
Typeface typeface = new Typeface(fontFamily, FontStyles.Normal, FontWeights.Normal, FontStretches.Normal);
FormattedText formattedText = new FormattedText(standardizationString, CultureInfo.CurrentCulture, FlowDirection.LeftToRight, typeface, fontSize, Brushes.Black);
rtb.Width = formattedText.Width;
rtb.Height = formattedText.Height;
Comment écrivez-vous le texte à la 'RichTextBox'? –