所以我正在为TCG的卡制造商工作。我似乎遇到了一个非常奇怪的故障,找不到合适的解决方法。我有几个面板,包含用于确定卡的不同变量的各种控件,如下所示:
但是,我注意到如果我进入Form1
。cs文件并更改代码 - 任何代码,从添加/删除注释到删除和恢复分号 - 然后返回进入设计视图时,设计视图窗口会变黑一会儿,同时重新绘制所有内容,然后弹回原位...除了各种面板的右侧突出到左边大约5个像素。它似乎并不多,但经过多次更改后,多次在窗口之间来回交换,我得到了这个:
......这当然是可怕的和无法使用的。很长一段时间我都无法确定为什么某些面板会这样做而其他面板却没有,但最后在重新设计屏幕截图中显示的Keywords
标签时,我突然意识到这是我设置的任何面板锚定在父控件的左侧和右侧。这是为了允许用户将窗口调整为其内容的大小。我现在有一个kludge,我修改了Form1.Load()
来硬编码受影响的面板的大小。这当然完全违背了首先使用可视化编辑器的要点。
控件的层次结构为Form1
- > SplitContainer
- > SplitContainer.Panel2
- > TabControl
- > StatsTab
- > { {1}}。遗憾的是,这似乎不是基于代码的问题,因为我没有编写任何代码来影响这一点。重绘显然实际上改变了StatsPanel
属性,如果我来回循环,我可以看到它缓慢减少。
那么,有谁知道可能出错了什么?我不喜欢跳到“哦,微软在他们的编辑器中有一个小故障”,但我找不到任何我正在做的事情或设置可能导致它。任何帮助都将非常感激。