用了TableLayoutPanel控件, 好处是可以动态地调整内部的控件位置, 但有时会导致所在Form每次打开时, 都会处于已编辑状态, 如下图。
如果只是想查看Form, 每次开启后的, 看到代表编辑状态的“*”, 很不舒服。
测试了多种状况, 大致找到了原因:
如果在TableLayoutPanel控件中加入了TextBox, 那么该TextBox会在所在单元上下分别留3像素的空间, 如果TableLayoutPanel控件的单元高度<3+TextBox高度+3, 那么TableLayoutPanel控件会在Form开启时重新计算TextBox的位置, 导致Form文件“被编辑”。