Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用wpf中已知的宽度、高度和字体计算文本框的字符容量_C#_Asp.net_Wpf_.net Core - Fatal编程技术网

C# 使用wpf中已知的宽度、高度和字体计算文本框的字符容量

C# 使用wpf中已知的宽度、高度和字体计算文本框的字符容量,c#,asp.net,wpf,.net-core,C#,Asp.net,Wpf,.net Core,我试图计算有换行符的文本框可以容纳多少字符或文本。 我想删除溢出文本。 我在运行时将字符串传递给一个文本框,我想截断字符串的额外部分,只显示可以轻松放入动态宽度、高度和字体的文本框中的子字符串。 用户可以指定任何宽度和高度以及任何字体。 有没有办法计算WPF中给定高度和宽度的文本框中可以容纳的字符数 我曾尝试过这样做: ` if(fontSize textBoxWidth) { 做{ //缩短长度; 长度-=1; truncationText=formattedText.Text.Trunca

我试图计算有换行符的文本框可以容纳多少字符或文本。 我想删除溢出文本。 我在运行时将字符串传递给一个文本框,我想截断字符串的额外部分,只显示可以轻松放入动态宽度、高度和字体的文本框中的子字符串。 用户可以指定任何宽度和高度以及任何字体。 有没有办法计算WPF中给定高度和宽度的文本框中可以容纳的字符数

我曾尝试过这样做:

`

if(fontSize textBoxWidth)
{ 
做{
//缩短长度;
长度-=1;
truncationText=formattedText.Text.Truncate(长度);
formattedText=GetFormattedText(myTextBox,truncationText);
}
while(fontSize textBoxWidth)

`

您可以尝试使用TextRenderer.MeasureText计算每个字符的大小。到目前为止您尝试了什么?@MiguelCarreira我会尝试让您知道的,谢谢您的帮助suggestion@PavelAnikhouski我尝试了
if(fontsizetextboxwidth){do{//reduce length;length-=1;truncationText=formattedText.Text.Truncate(length);formattedText=GetFormattedText(myTextBox,truncationText);}while(fontSize textBoxWidth)
if (fontSize <=minimumFontSize && 
  formattedText.WidthIncludingTrailingWhitespace > textBoxWidth) 
 { 
  do { 
       //reduce length; 
       length -= 1; 
       truncationText = formattedText.Text.Truncate(length); 
       formattedText= GetFormattedText(myTextBox, truncationText); 
     }
   while (fontSize <=minimumFontSize && formattedText.WidthIncludingTrailingWhitespace > textBoxWidth)