现在,我正在尝试用c# WPF创建一个新颖的(启动)文本阅读器。
我正面临一个问题。我不知道如何将字符串(从文本文件)分割为屏幕页面。(像书页一样)(屏幕的页面是由标签UI控件实现的。)因为字符串有'New Line n' &"标签"的性格。因此,我无法计算一个标签(屏幕上的一页)可以插入多少字符。标签。TextLength返回可插入标签的字符数。但是,如果字符串包含'n',则会产生大量空白。所以我希望知道如何计数字符串的长度,可以插入到标签'n'。或者,请指导我如何通过使用其他UI控件轻松创建此程序。
& lt;附加信息>
谢谢你的意见。我添加了如何使用标签控件。在默认的标签UI控件通过插入标签的字符串改变它的大小。然而,在这个程序中,我将固定标签控件的大小。它的大小将与Form size一致。
我应该知道宽度&标签的高度(行)。或者我希望知道我的程序的控件或库。(遗憾的是,我还没有找到它。)
谢谢!
您的标签可以有AutoSize=true
和MaximumSize=new Size(maximumPageWidth, 0);
这样,当达到最大宽度时,标签将自动换行。每一行只会增加标签的高度。
然后,您需要将文本逐行添加到该标签。每次向标签添加一行时,检查maximumPageHeight是否达到。
如果达到最大高度,那么这就是页面结束的地方。在此之后,您需要将下一行添加到新页面。
Edit:如果使用System.Windows.Forms.Label
FlowDocument是我想要的解决方案!谢谢你让我知道那件事。——cicciorocca ! !