C#:调整大小时无法更新控件高度

标签 c# .net winforms user-controls resize

我已经实现了 UserControl带有文字 Label .我想在调整控件宽度时调整控件高度,使整个文本始终可见,如图所示: sample

我已经自定义了 WinForms Label计算TextBounds标签(文本所需的矩形),我引发了一个名为 TextBoundsChanged 的事件这表明文本矩形大小已更改(请注意,在调整标签大小时始终会引发此事件)。

这是可行的:我收到事件,然后更新我的控件高度,但控件的高度实际上没有改变!!

我怀疑 TextBoundsChanged UserControl 时引发事件正在调整大小。 UserControl也正在调整大小,所以我担心 WinForms 在调整大小时会忽略控件高度更新

我说的对吗?有人知道如何解决这个问题吗?

提前致谢。


EDIT: The user control not only show text. This is only a simplified sample. So, my user control needs to vertically grow when I reduce the width, in order to show the whole text in the label. the label is not a custom winforms label, because it renders HTML content. Also, I'm using .NET1, so the word wrap property is not available for me

最佳答案

只需设置 Dock Anchor UserControl 中 Label 的属性,一切都会像魅力一样工作(您还可以在设计时检查正确的行为,只需调整 UserControl 的大小)。 ;-)

关于C#:调整大小时无法更新控件高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5001783/

相关文章:

c# - 如何通过 SDK 检测用户在 MS Dynamics CRM 中是否具有管理员角色?

c# - mvc 6 中下拉列表的 TagHelpers onchange 事件

c# - 表单反序列化不起作用

c# - 如何遍历匿名类型的列表

c# - 在本地计算机上使用 WCF 获取错误 "This collection already contains an address with scheme http"

c# - 通过关系检查和可能的坏数据逐行插入大量数据

c# - 在 foreach 中更改集合

.net - 如何在 R 中的 RSQLite 中的两个连接之间共享 SQLite 内存数据库?

c# - Richtextbox 在新文本前加上颜色

.net - MDIParent 平铺 child