Almacenamiento de la lista genérica <Objeto personalizado> usando ApplicationSettingsBase

Estoy tratando de guardar una Lista <Foo> usando ApplicationSettingsBase, sin embargo, solo genera lo siguiente aunque la lista esté llena:

<setting name="Foobar" serializeAs="Xml">
    <value />
</setting>

Foo se define de la siguiente manera:

[Serializable()]
public class Foo
{
    public String Name;
    public Keys Key1;
    public Keys Key2;

    public String MashupString
    {
        get
        {
            return Key1 + " " + Key2;
        }
    }

    public override string ToString()
    {
        return Name;
    }
}

¿Cómo puedo habilitar ApplicationSettingsBase para almacenar List <Foo>?

Respuestas a la pregunta(6)

Su respuesta a la pregunta