找了一些资料,大约是因为安装了跟操作系统及原始VS2008语言不同的SP1包造成的。以我自己的问题为例,中文系统,装了中文VS2008,最后却找了一个英文SP1装上了,所以界面混杂着中文和英文,最后出了这个奇怪的问题。之前装中文SP1时是没出过这个问题的。
解决方案:
1. Tools(工具)->Options(选项)->Environment(环境)->International Settings(国际化)->选择英文
2. 退出VS2008,进入命令行,运行devenv /resetskippkgs
重启之后语言变为英文,一切恢复正常
后记:后发现跟语言无关,是因为先装了VS2008英文版,后装了SqlServer2008中文版造成的。所以还是先装SqlServer后装VS2008比较靠谱。