c# - Winforms - 标签的大小未正确更新
问题描述
我正在尝试在 Winform 的标签中显示矩阵。当矩阵小于父内容时,我希望它位于中心,而当它更大时,我希望它位于左上角并显示滚动条。
此标签的父级是具有 AutoScroll 设置为 True 的面板,我正在使用 TextChanged 事件。这是我的代码:
matrix1Content.TextChanged += matrixContent_TextChanged;
...
private void matrixContent_TextChanged(object sender, EventArgs e)
{
Label matrixContent = (Label)sender;
Panel matrixPanel = (Panel)matrixContent.Parent;
matrixContent.AutoSize = true;
if (matrixContent.Size.Width > matrixPanel.Size.Width || matrixContent.Size.Height > matrixPanel.Size.Height)
{
matrixContent.Location = new Point(0, 0);
matrixContent.Dock = DockStyle.None;
}
else
{
matrixContent.AutoSize = false;
matrixContent.Dock = DockStyle.Fill;
}
Debug.WriteLine(matrixContent.Size, matrixContent.Name);
}
第一个矩阵位于左上角而不是中心。从调试中我看到,即使文本发生了变化,标签的大小仍然相同。
然后我尝试设置另一个较小的矩阵它工作正常:
帮助。
解决方案
推荐阅读
- python - 熊猫阅读Excel和所需数据的拆分部分
- java - 关于在 ANTLR 中查找布尔变量的问题
- arrays - 如何在C中基于线程添加到数组
- android - 有什么方法可以设置首选项对话框的主题?
- python - 在密钥 ID 上链接 Json 数据以创建全新的 Json 文件
- matlab - 在工作区中保存 parfor 循环数据(Matlab)
- angular - 提交时对字段进行条件验证
- python - 试图腌制 ML 模型无法腌制 _thread.RLock 谷歌 colab 中的对象
- nativescript-vue - 范围和全局 CSS 不适用于 Nativescript-Vue
- r - 使用 R 函数创建分层直方图