C/C++教程

DesignSurface中代码控制控件大小,调整边框未更新的问题

本文主要是介绍DesignSurface中代码控制控件大小,调整边框未更新的问题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

问题

当我将控件放在自定义DesignSurface上时,当我以编程方式更改控件的大小或位置时,调整边框边框不会更改本身。我必须取消选中,然后通过鼠标选择此控件强制重画。这导致实际窗体大小大于当前调整边框的位置。

解决方式

使用PropertyDescriptor的方法 “SetValue” 能发射“ComponentChanged “通知设计师重绘的事件。

           var frmView = (Form) host.RootComponent;
            PropertyDescriptor propertyDescriptor = TypeDescriptor.GetProperties(frmView)["Width"];
            if (propertyDescriptor != null)
            {
                propertyDescriptor.SetValue(frmView, frmView.Width);
            }
这篇关于DesignSurface中代码控制控件大小,调整边框未更新的问题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!