Why does VS crash as i try open a C# class in the editor (abstract inheritance issue?)
<p>I am reciving a strange error and it is causing VS to crash, to what i have managed to gather it is due to the fact that VS tries to instanciate the class (wich is inheriting an interface &amp; abstract class)i am about to open as to run the code in the backround and try my code i add or any changes. </p>

<p>The icon is not as the regular class icon's in the solution explorer but it looks like the Form icon instead, As soon as i remove the inheritance it goes into a regular class icon and i can dubble klick it and VS does not crash but instead opens the class in the editor.</p>

<p>the classes:</p>

<pre><code>namespace Tester
{
   interface ITest
   {

      string ID { get; set; }

      double age { get; set; }        


   }
}
</code></pre>

<p>The next one:</p>

<pre><code>namespace Tester
{
public abstract class Trial : ITest
{
    //Declaring variables
    string m_ID;
    double m_age;

    string ID 
    { 
        get { return m_ID; }
        set { m_ID = value; }
    }

    double age 
    {
        get { return m_age; }
        set { m_age = value; }
    }

}
}
</code></pre>

<p>Next one is:</p>

<pre><code> namespace Tester
{
public class Time : Trial
{
    //Declaring variables
    private bool m_isfast;


    /// &lt;summary&gt;
    /// Default constructor
    /// &lt;/summary&gt;
    public Time()
    {
    }

    public bool IsFast
    {
        get { return m_isfast; }
        set { m_isfast = value; }
    }

}
}
</code></pre>

<p>Last one is: </p>

<pre><code>  namespace Tester
  {
  class BanditOne : Time
  {
        //Declaring variables
        private bool m_isTransAm;

        /// &lt;summary&gt;
        /// Constructor
        /// &lt;/summary&gt;
        public BanditOne()
        {
        }

        public bool IsTransAm
        {
            get { return m_isTransAm; }
            set { m_isTransAm = value; }
        }


        new public string GetRaceSpecificData()
        {                
            string strout = (string.IsNullOrEmpty(strInfo) ? string.Empty : strInfo);

            if (IsTransAm)
            {
                strout += string.Format("\nProduces #1");
            }
            if (IsFast)
            {
                strout += (IsFast ? "\nFast as lightning! " : "\nSlow like a snail.");
            }
          return strout;

        }
        }
</code></pre>

<p>I hope someone got an idea as i am all out :/ Is there something i have completely misunderstood or missed about abstract classes perhaps? </p>
