none
界面乱掉的问题 RRS feed

  • 问题

  • 在主界面上有一个TAB控件,上有多个页面,是多人合作开发,用的SVN,所以经常出现冲突的情况,给过多次修改Designer.cs后,现在里面的内容可能已经很乱了。
    最近出现了一个奇怪的问题,就是本调好的界面,一运行就会变掉,DataGridView超出Form的边界,还有一些按钮也会超出。
    不管怎么调,只要一运行就会变成这样子

    可能是怎么回事?
    2010年1月22日 1:22

答案

  • 经过 我一次次的偿试,终于解决了。
    试了好多种办法,如删了GRIDVIEW重放一个,删了PAGE重新添加。
    都不行,开始时以为是Designer里的代码乱掉了。于是想新建一个窗体,向里面添加同样的控件,命名,事件,完全一样,然后用新的Designer覆盖原来的Designer,结果我新弄的界面也出现了同样的问题。
    我们另一个说是anchor的问题,去掉anchor,调整大小,再设置anchor结果一样不行。
    仔细想想,哪些Page里出现了这个问题?哪些没有出现?为什么没有出现?
    没有出现的有一个spliter控件,Dock属性是Fill.那么如果在其它Page里放个Panel把原来的控件放到Panel里,然后把Dock设为Fill,一试,果然可以。
    • 已标记为答案 male110 2010年1月27日 7:51
    2010年1月27日 7:51

全部回复

  • 估计还是你design.CS类里面的属性没有更改过来,你查看下这里面的属性值变了吗?

    每次用SVN更改时,最好都要先获取最新版本,然后再进行修改!
    努力+方法=成功
    2010年1月22日 1:32
  • 哦,你是说,在设计时看起来是改变大小,实际上,design.cs里的代码并没有跟着改变是吧。我先看看
    2010年1月22日 1:41
  • 2010年1月22日 1:47
    版主
  • 调整tabA下的dgrViewPointsModel 从(1304,490)调整为(1304,426)查看相应的Design.cs也跟着改变了,对this.dgrViewPointsModel.Size进行搜索,只有一处,不存在重复
    运行程序,再查看,大小变成了(1304,443)


    调整 tabB下的dgrViewPointSettings,从(1304,496)调整为(1304,426),运行程序,变成(1304,513),上面的那个变成(1304,460)
    再次运行,第一个变成(1304,477),第二个变成(1304,530)之后再运行,其大小不变


     第一个的大小变化
                   手动调整                              运行后自动改变(443-426)=17         
    (1304,490)========>(1304,426)===============>(1304,443)

     运行后自动改变(460-443)=17       运行后自动改变(477-460)=17
    ==============>(1304,460)=============>(1304,477) 之后再运行,大小不变



                                            手动调整                 运行后自动改变(513-426)=87    运行后自动改变(530-513)=17
    第二个的大小变化 (1304,496)======>(1304,426)===========(1304,513)==========>(1304,530) 之后运行不再改变

    • 已编辑 male110 2010年1月22日 11:39
    2010年1月22日 2:15
  • 每次调整后都会自动改变

    但最后的大小后来两次测试,第一个到460
    第二个到443
    就不在增加。

    2010年1月22日 2:24
  • 一个TAB里的GRIDVIEW调整后运行会自动增长17
    其它TAB的(一部分)也会跟着自动调整。
    2010年1月26日 1:41
  • http://www.soft000.com/down/xxxx.rar
    我挖出来的。
    不知道是我VS问题,还是代码问题?
    2010年1月26日 8:29
  • 经过 我一次次的偿试,终于解决了。
    试了好多种办法,如删了GRIDVIEW重放一个,删了PAGE重新添加。
    都不行,开始时以为是Designer里的代码乱掉了。于是想新建一个窗体,向里面添加同样的控件,命名,事件,完全一样,然后用新的Designer覆盖原来的Designer,结果我新弄的界面也出现了同样的问题。
    我们另一个说是anchor的问题,去掉anchor,调整大小,再设置anchor结果一样不行。
    仔细想想,哪些Page里出现了这个问题?哪些没有出现?为什么没有出现?
    没有出现的有一个spliter控件,Dock属性是Fill.那么如果在其它Page里放个Panel把原来的控件放到Panel里,然后把Dock设为Fill,一试,果然可以。
    • 已标记为答案 male110 2010年1月27日 7:51
    2010年1月27日 7:51