我有一个带有标签和文本框的用户控件,但我无法确定为什么它们在运行时总是重新调整大小。这是快照:
如您所见...对象已调整大小并且间距已更改。我不认为它与我的代码有关......它只是 vb.net 的设置吗?请帮忙。
我有一个带有标签和文本框的用户控件,但我无法确定为什么它们在运行时总是重新调整大小。这是快照:
如您所见...对象已调整大小并且间距已更改。我不认为它与我的代码有关......它只是 vb.net 的设置吗?请帮忙。
请检查用户控件内的文本框、标签和按钮中的Anchor属性的值。可能设置为保持与容器右边界的距离(用户控件)
I just found the answer to my question. Instead of user control, I change the form (the container) AutoScaleMode from Form to None. Thanks everyone! Cheers!
尝试使用用户控件的AutoScaleMode属性,如果设置为Font将其更改为None。
在某些情况下,容器(可能是表单)的字体大小和类型与用户控件不同,如果用户控件将此属性设置为Font,那么它将尝试调整自身大小以覆盖新的字体类型和大小。
我已经能够复制您的问题。我创建了一个用户控件,并为尝试重新调整大小而奋斗了很长时间。最初按照您的建议向我的用户控件添加了一个拆分容器,但我无法调整它的大小。
我想知道 3,3,3,3 的默认保证金可能与它有关。当我最初添加我的拆分容器时,它比用户控件小,因此无法重新创建问题。
如果我的拆分容器和我的用户控件的宽度相同,那么边距会更明显,并且实际上增加了我的用户控件的宽度。
当然,您的问题可能与此完全无关,但我建议您检查与控件宽度相比的边距。我很欣赏边距对您来说可能是完全必要的,但至少如果只是为了检查这是否解决了您的问题,为什么不删除它们。或者通过确保拆分容器的宽度小于用户控件的宽度,然后减去每一侧的边距。例如,如果您的用户控件的宽度为 300,而您的拆分容器的边距为 3,3,3,3,则检查您的拆分容器是否小于 300-3-3 = 294。
只是一个理论,实际上可能没有用....祝你好运