Invalid cast exception
<p>I am posting this because the last time I asked this question it did not get solved and I cannot seem to solve this on my own. I am very very new to C# and programming, trying to teach myself so and help you can give would be great. </p>

<p>So on to the error : </p>

<blockquote>
  <p>Unable to cast object of type
  'System.Collections.Generic.List<code>1[test.Form1+comoditys]' to type
  'System.Collections.Generic.List</code>1[test.Form2+mycost]'.</p>
</blockquote>

<p>form2 code :</p>

<pre><code>using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;

namespace test
{
public partial class Form2 : Form
{
    public float Alligor;
    public float Briochit;
    public float Chollonin;
    public float Espitium;
    public float Hydrobenol;
    public float Isopropenetol;
    public float Metachropin;
    public float Phlobotil;
    public float Plasteosine;
    public float Polynitrocol;
    public float Polynucleit;
    public float Prilumium;
    public float Statchanol;
    public float Titanium;
    public float Vitricyl;

    public float AlligorInput;
    public float BriochitInput;
    public float CholloninInput;
    public float EspitiumInput;
    public float HydrobenolInput;
    public float IsopropenetolInput;
    public float MetachropinInput;
    public float PhlobotilInput;
    public float PlasteosineInput;
    public float PolynitrocolInput;
    public float PolynucleitInput;
    public float PrilumiumInput;
    public float StatchanolInput;
    public float TitaniumInput;
    public float VitricylInput;

    public float costofAlligor;
    public float costofBriochit;
    public float costofChollonin;
    public float costofEspitium;
    public float costofHydrobenol;
    public float costofIsopropenetol;
    public float costofMetachropin;
    public float costofPhlobotil;
    public float costofPlasteosine;
    public float costofPolynitrocol;
    public float costofPolynucleit;
    public float costofPrilumium;
    public float costofStatchanol;
    public float costofTitanium;
    public float costofVitricyl;

    public double totalCost;

    [Serializable]
    public class mycost
    {
        public float secondPrice;
    }

    private List&lt;mycost&gt; costList = new List&lt;mycost&gt;();

    private mycost o1 = null;
    private mycost o2 = null;
    private mycost o3 = null;
    private mycost o4 = null;
    private mycost o5 = null;
    private mycost o6 = null;
    private mycost o7 = null;
    private mycost o8 = null;
    private mycost o9 = null;
    private mycost o10 = null;
    private mycost o11 = null;
    private mycost o12 = null;
    private mycost o13 = null;
    private mycost o14 = null;
    private mycost o15 = null;

    public Form2()
    {
        InitializeComponent();

        o1 = new mycost();
        o2 = new mycost();
        o3 = new mycost();
        o4 = new mycost();
        o5 = new mycost();
        o6 = new mycost();
        o7 = new mycost();
        o8 = new mycost();
        o9 = new mycost();
        o10 = new mycost();
        o11 = new mycost();
        o12 = new mycost();
        o13 = new mycost();
        o14 = new mycost();
        o15 = new mycost();

        costList.Add(o1);
        costList.Add(o2);
        costList.Add(o3);
        costList.Add(o4);
        costList.Add(o5);
        costList.Add(o6);
        costList.Add(o7);
        costList.Add(o8);
        costList.Add(o9);
        costList.Add(o11);
        costList.Add(o12);
        costList.Add(o13);
        costList.Add(o14);
        costList.Add(o15);

        FileStream df = new FileStream("comoditys.dat", FileMode.Open);
        BinaryFormatter abf = new BinaryFormatter();
        costList = (List&lt;mycost&gt;)abf.Deserialize(df);
        df.Close();

        if (costList != null)
        {
            if (costList.Count &gt; 0)
                Alligor = costList[0].secondPrice;

            if (costList.Count &gt; 1)
                Briochit = costList[1].secondPrice;

            if (costList.Count &gt; 2)
                Chollonin = costList[2].secondPrice;

            if (costList.Count &gt; 3)
                Espitium = costList[3].secondPrice;

            if (costList.Count &gt; 4)
                Hydrobenol = costList[4].secondPrice;

            if (costList.Count &gt; 5)
                Isopropenetol = costList[5].secondPrice;

            if (costList.Count &gt; 6)
                Metachropin = costList[6].secondPrice;

            if (costList.Count &gt; 7)
                Phlobotil = costList[7].secondPrice;

            if (costList.Count &gt; 8)
                Plasteosine = costList[8].secondPrice;

            if (costList.Count &gt; 9)
                Polynitrocol = costList[9].secondPrice;

            if (costList.Count &gt; 10)
                Polynucleit = costList[10].secondPrice;

            if (costList.Count &gt; 11)
                Prilumium = costList[11].secondPrice;

            if (costList.Count &gt; 12)
                Statchanol = costList[12].secondPrice;

            if (costList.Count &gt; 13)
                Titanium = costList[13].secondPrice;

            if (costList.Count &gt; 14)
                Vitricyl = costList[14].secondPrice;

        }

    }

    private void textBox1_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

            AlligorInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox2_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

            BriochitInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox3_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

            CholloninInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox4_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

            EspitiumInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox5_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

            HydrobenolInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox6_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

           IsopropenetolInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox7_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

            MetachropinInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox8_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

            PhlobotilInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox9_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

            PlasteosineInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox10_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

            PolynitrocolInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox11_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

           PolynucleitInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox12_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

            PrilumiumInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox13_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

            StatchanolInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox14_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

           TitaniumInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void textBox15_TextChanged(object sender, EventArgs e)
    {
        // 1st text box input is float
        float tempFloat;



        if (float.TryParse(textBox1.Text, out tempFloat))
        {

           VitricylInput = tempFloat;

        }
        else
            MessageBox.Show("uh oh");



    }

    private void button1_Click(object sender, EventArgs e)
    {
        costofAlligor = Alligor * AlligorInput;
        costofBriochit = Briochit * BriochitInput;
        costofChollonin = Chollonin * CholloninInput;
        costofEspitium = Espitium * EspitiumInput;
        costofHydrobenol = Hydrobenol * HydrobenolInput;
        costofIsopropenetol = Isopropenetol * IsopropenetolInput;
        costofMetachropin = Metachropin * MetachropinInput;
        costofPhlobotil = Phlobotil * PhlobotilInput;
        costofPlasteosine = Plasteosine * PlasteosineInput;
        costofPolynitrocol = Polynitrocol * PolynitrocolInput;
        costofPolynucleit = Polynucleit * PolynucleitInput;
        costofPrilumium = Prilumium * PrilumiumInput;
        costofStatchanol = Statchanol * StatchanolInput;
        costofTitanium = Titanium * TitaniumInput;
        costofVitricyl = Vitricyl * VitricylInput;

        totalCost = costofAlligor + costofBriochit + costofChollonin + costofEspitium + costofHydrobenol + costofIsopropenetol + costofMetachropin + costofPhlobotil + costofPlasteosine + costofPolynitrocol + costofPolynucleit + costofPrilumium + costofStatchanol + costofTitanium + costofVitricyl;

    }

    private void textBox16_TextChanged(object sender, EventArgs e)
    {
         textBox13.Text = totalCost.ToString();

        }
    }
  }
</code></pre>

<p><a href="http://pastebin.com/cRy4FJhX" rel="nofollow">form1 can be found here</a>.</p>
