
WPF中的

RichTextBox基于文本内容自动设置大小,但缺少Windows窗体中的AutoSize属性,但是不幸的是WPF没有实现此属性richtextbox wpf,这有点令人沮丧. 然后自己写. 相对简单的是诸如TextBox之类的控件,它仅显示纯文本. 您可以根据文本richtextbox wpf,字体和其他属性来构造FormattedText实例. 这个实例具有Width / Height属性(我仍然非常想念Font.MeasureString方法),最纠结的是RichTextBox控件,嘿,还是. 这个想法很简单,监视文本更改,并在文本更改时调整控件大小: 受保护的重写void OnTextChanged(TextChangedEventArgs base.OnTextChanged(e); AdjustSizeByConent(); publicvoid AdjustSizeByConent()获取正确的高度Height myHeight; / / myWidth获得正确的宽度如何获得Width的正确高度?有一种非常便宜的方法可以分别在Document.ContentStart和Document.ContentEnd上调用TextPointer.GetCharacterRect()方法,我们可以在开始和结束处获得内容边框文档的内容,如下图所示: 注意两个红色边框,并从第二个边框的底部减去第一个边框的顶部以获取内容的高度,因此: Rect rectStart Document.ContentStart.GetCharacterRect (LogicalDirection.Forward); Rect rectEnd Document.ContentEnd.GetCharacterRect(LogicalDirection.Forward); var height rectStart.Top; var keepH rectEnd.Height / 2.0; Height Math.Min(MaxHeight,Math.Max) (了minHeight,高度remainH)); (代码中的“ mainH”是一个pre-,请留一些空白)
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-154580-1.html
甲午海战前基本上就已经决定了北洋水师的失败
就好比当年珍珠港一样
按他的经济法