当前位置:编程学习 > C#/ASP.NET >>

关于C#开发的一些非常奇怪的现象。

最近用VS2010开发C#,发现了一些很奇怪的问题。
1,按钮和Panel的size明明已经都设置好了,可是程序运行之后,在画面上看到的size和自己设置的完全不相符,不知道是什么原因导致size自己变化了。能确认的是绝不是我在程序里面改变的,难道系统可以自动改变已经设置好了的东西?
2,使用MenuStrip控件来实现菜单。在添加子菜单的时候,明明已经排好1,2,3,4的表示顺序了,可是程序一运行,却发现子菜单的顺序变成3,1,2,4了。太奇怪了。

不知道哪位大侠是否也遇到过类似的事情。是我什么属性没有设置么?该怎么解决呢? --------------------编程问答-------------------- 重新创建页面 --------------------编程问答-------------------- 表示没有遇到过,,,
重新生成解决方案,, --------------------编程问答-------------------- 关于问题2,我试过把所有的子菜单都删除掉,然后一个一个再重新创建,神奇的是运行后菜单的顺序还是和之前错误的时候一模一样。而且即使在编辑状态下把子菜单的顺序随便修改,运行后的顺序还是一样的,不以你的意志而转移,太强大了!!!! --------------------编程问答-------------------- 确实会变的。你应该设置下autosize,dock,anchor什么的。 --------------------编程问答-------------------- 应该是没有删干净吧
重新创建个干净的工程看看 --------------------编程问答-------------------- 有没有手动修改过 design.cs 文件里的代码,我以前改过,虽然代码格式对的但可能跟它自动的不符而被删掉 --------------------编程问答-------------------- 表示没遇到过,
你在运行之前先重新生成一下看看 --------------------编程问答-------------------- 我认为他应该有一个设置显示顺序的属性 --------------------编程问答-------------------- 应该有个设置顺序的属性 --------------------编程问答-------------------- 关于第一个问题,你看看dock、anchor等属性设置对不对呢? --------------------编程问答-------------------- 看看panel是不是有重叠的地方 --------------------编程问答--------------------
引用 10 楼  的回复:
关于第一个问题,你看看dock、anchor等属性设置对不对呢?


我是用代码创建的panel和按钮,没有设置这两个属性,需要特别设定一下么? --------------------编程问答--------------------
引用 11 楼  的回复:
看看panel是不是有重叠的地方


我是在一个大panel上面均匀间隔的放入了N个小panel,然后在小panel上面放按钮。现在问题比较严重的就是那个小panel的大小会变化。 --------------------编程问答-------------------- 重新生成解决方案 试试 --------------------编程问答-------------------- 我想这个第一个问题你可以查看一下是否绑定了控件的Dock和Anchor这两个会根据分辨率不同调整的,
第二个问题的话可以尝试去看看点开类名左面加号里面系统为你生成的代码,搜索下你设置的控件名
然后去看先系统生成的属性是否正确,谢谢
引用楼主  的回复:
最近用VS2010开发C#,发现了一些很奇怪的问题。
1,按钮和Panel的size明明已经都设置好了,可是程序运行之后,在画面上看到的size和自己设置的完全不相符,不知道是什么原因导致size自己变化了。能确认的是绝不是我在程序里面改变的,难道系统可以自动改变已经设置好了的东西?
2,使用MenuStrip控件来实现菜单。在添加子菜单的时候,明明已经排好1,2,3,4的表示顺序了,可是程序……
--------------------编程问答-------------------- 变更完控件后点击“全部保存”->“编译运行” ,可能是资源文件没有被保存  一起在用ListView 控件的时候有这个问题 --------------------编程问答-------------------- 环境配置和你的开发补丁的事情吧  有些东西 太新了就一定会有问题
--------------------编程问答-------------------- 这种问题在使用第三方控件时候尤其严重.我们出现这种问题的时候,都是 不得已undo check out,然后把代码删掉重新嵌入. --------------------编程问答-------------------- --------------------编程问答-------------------- 也可能用了基类,或者第三方的皮肤控件吧? --------------------编程问答-------------------- 我用的就是VS自带的控件,按理说应该是不会有问题的。

我试了把控件的Dock和Anchor都设成了None,可是还是不行。

而且和分辨率应该没有关系,我都是在一台机器上测试的,两个画面互相切换,每个画面都是一个大panel里面套几个小panel加按钮。开始的时候还是正常的,切换几次就变化了,而且是渐变的,越来越离谱。

关键是它开始还是正常的,我去,太奇怪了。 --------------------编程问答--------------------
引用 21 楼  的回复:
我用的就是VS自带的控件,按理说应该是不会有问题的。

我试了把控件的Dock和Anchor都设成了None,可是还是不行。

而且和分辨率应该没有关系,我都是在一台机器上测试的,两个画面互相切换,每个画面都是一个大panel里面套几个小panel加按钮。开始的时候还是正常的,切换几次就变化了,而且是渐变的,越来越离谱。

关键是它开始还是正常的,我去,太奇怪了。

那么玄乎,要不你把有此现象的项目上传到 csdn 让大家试下是不是一样? --------------------编程问答--------------------
引用楼主  的回复:
最近用VS2010开发C#,发现了一些很奇怪的问题。
1,按钮和Panel的size明明已经都设置好了,可是程序运行之后,在画面上看到的size和自己设置的完全不相符,不知道是什么原因导致size自己变化了。能确认的是绝不是我在程序里面改变的,难道系统可以自动改变已经设置好了的东西?
2,使用MenuStrip控件来实现菜单。在添加子菜单的时候,明明已经排好1,2,3,4的表示顺序了,可是程序……

我之前也碰到这样的问题,似乎在容器控件中嵌套容器控件就会出现这个的bug。我当时也没有找到解决办法,幸好一旦生成的exe文件运行时不会自动变化size和location,所以我当时每次编译运行后就手动复位的笨办法。

--------------------编程问答-------------------- width height order --------------------编程问答-------------------- 还没用2010了。没遇到过。 --------------------编程问答-------------------- 重新生成一下解决方案吧  --------------------编程问答--------------------
引用 23 楼  的回复:
我之前也碰到这样的问题,似乎在容器控件中嵌套容器控件就会出现这个的bug。我当时也没有找到解决办法,幸好一旦生成的exe文件运行时不会自动变化size和location,所以我当时每次编译运行后就手动复位的笨办法。


我现在用UserControl 代替了 大panel,然后在UserControl里面加N个小panel,现在好像是没有问题了。VS2010 + .Net4.0,新东西不靠谱啊!! --------------------编程问答-------------------- 重新添加吧 有时候的问题就是特别出人意料 --------------------编程问答-------------------- 等我开始用VS2010  会再次求助 --------------------编程问答--------------------
这么神奇?,要不你吧这个页面删了,再写一次看是否可行? --------------------编程问答-------------------- 神奇,你说的挺玄乎,没有具体的一些代码样子等,看不明白的。 --------------------编程问答-------------------- 我也遇到过这问题,rebuild solution就行了 --------------------编程问答-------------------- 页面在IE下缓存了? --------------------编程问答--------------------
很多奇怪的事情,是因为你没发现问题所在。

大部分奇怪的事情,找到问题了你会发现好弱智。。 --------------------编程问答-------------------- 是有点奇怪的问题,呵呵。。。。。 --------------------编程问答-------------------- 问题依旧存在,不过容器嵌套容器似乎确实很容易出现问题。 --------------------编程问答-------------------- 没有遇到过,楼主有时间看以去看看你的designer文件中是不是有什么改动
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,