c# - 如何使用自动换行功能在 C#4.0 中动态设置标签框的文本?

标签 c# .net winforms c#-4.0 label

在我的基于 C#4.0 Windows 窗体的应用程序中,我有一个标签框。现在我想动态设置标签框的文本。我的文本看起来像段落的。所以,每当我显示我的文本时,只有一部分文本以一行的形式显示。所以,我想在文本到达表单右端时将文本换行到下一行...

我是怎么做到的。请指导我解决这个问题...

最佳答案

您需要做的就是设置标签控件的 AutoSize property为假。您可以在设计器中通过“属性”窗口或通过代码执行此操作:myLabel.AutoSize = false

当您在设计器中添加控件时,默认情况下它是打开的(尽管当您通过代码实例化控件时默认值为 false)。启用此属性后,控件会尝试自动调整其宽度(而不是其高度!)以显示其全部内容。这对于多个段落来说效果不佳,因为不可能在屏幕上的一行中显示全部内容。

通过关闭此属性,您可以手动调整控件大小以适应您的文本。

其他一切都是自动处理的。当文本到达控件边框的边缘时,它会自动换行。例如:

The asker's original question, displayed on a label control with AutoSize = false.

如果你不想手动设置标签控件的大小,你可以利用 DockAnchor属性,它将自动调整控件的大小以适应其父容器。这很方便,例如,如果您希望标签填充您放置在其中的整个表单或面板。

关于c# - 如何使用自动换行功能在 C#4.0 中动态设置标签框的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5802686/

相关文章:

c# - 如何修改列表属性而不影响同类型的其他列表属性?

winforms - 创建适用于 Windows 的音频图形均衡器

winforms - 使用 NHibernate 在多个数据库之间复制实体

c# - 在基础构造函数中使用 'this'?

c# - 通过将以特定字母开头的单词放在开头来对字符串列表进行排序

c# - 删除另一个进程正在使用的图像

.net - 生成自定义配置节的工具

java - Java JAR 文件是否类似于 .Net 程序集?

.net - 按 ctrl+space 时 Visual Studio 显示文档

c# - VerticalLineAnnotation 未显示在 RangeBar MSChart 上