首页 > 代码库 > 设定了自定义属性,来控制控件的宽度或高度,但数据会不正常
设定了自定义属性,来控制控件的宽度或高度,但数据会不正常
虽然设定了某一个数值,但老是自动变为另一个数值
,如,宽度设置为100,但运行或重新打开窗体设计界面,宽度自动变为133,如多打开几次,甚至会越变越大,寻找很久,也找不到原因,在多次尝试后,才发现原因
之前为省事,在设置自定义属性时,使用如下格式:
<Category("MAX Member")> _
Public Property mShowControlLength As Integer
Get
Return xShow.Width
End Get
Set(value As Integer)
xShow.Width = value
End Set
End Property
从理论上来说,没有任何问题,但是就是会造成这个值不能固定,甚至越变越大,后来改成如下格式,终于固定:
<Category("MAX Member")> _
Public Property mShowWidth As Integer
Get
Return _showWidth
‘使用自定义的变量来输出设定值End Get
Set(value As Integer)
_showWidth = value
xShow.Width = _showWidth
If (Me.DesignMode) Then
xItemPanel.Refresh()
End If
End Set
End Property
?原因分析,由于控件中的控件本身并不存储设定值,那么在获取宽度时,是程序根据当时情况计算得到的,计算时的宽度是无法预计的,所以会显示为随机变大的值,然后,再根据此值保存为设置值。就发生了这种情况,吸取这次教训,不要再犯
设定了自定义属性,来控制控件的宽度或高度,但数据会不正常
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。