VS2010,C#的编辑器,在任何一个方法中,
键入switch+tab自动生成代码,然后再这个switch生成 的某个case语句块内再键入switch然后按tab键,
这样自动生成的代码格式 是没有排好的,不知安了VS10的朋友是不是也这样。好象VS2008没这个问题

解决方案 »

  1.   

    8L是2010吗?我的情况是:        void M() {
                switch (switch_on) {
                    default:
                        switch (switch_on)
    {
    default:
    }
                        break;
                }
            }
        }
      

  2.   

    8L 你在你的default:后面加上break;再试试
      

  3.   

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                switch (switch_on)
                {switch (switch_on)
    {
    default:
    }
                    default:
                }
            }
        }
    }
      

  4.   

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                switch (switch_on)
                {
                    default: switch (switch_on)
                        {
                            default:
                        }
                }
            }
        }
    }
      

  5.   

    2010里没有case  除了default
      

  6.   


    你在两做测试时,要在default:后加break; 加了,VS2010就不一样了,08同样情况下是不会出现这种情况的。void M(){
      switch(0){
        case 0:
          switch//+tab 这里行为08和10是不一样的,08tab自动生成之后是排好版的,而10则没有排好版。
        break;
       
      }
    }
      

  7.   

    VS10中 如果你不在defalut:标签后加break;那么 它不会出现这种情况,就象8楼littleqiang520
    代码所示的那样,但加了break;你再default中就会,或者你直接在任何一个case中也会。
      

  8.   

    你仔细看你10楼和13楼LCL的代码...看看跟8楼littleqiang520和15楼LCL的代码有什么不同...你自己犯了语法错误就别赖VS有问题...
      

  9.   

    我同步 VS10,08 测试这个问题 发现的确 是10的问题,除非我的10已经损坏 ,是我个人的情况,现在
    我就是向其他安了VS10的朋友求证这件事,这个状况。