Pregunta

He estado usando en algunos proyectos una biblioteca xml para guardar mi configuración, cómo funcionaba así:

saveSettings(Control control, XmlConfig config, string controlName)

Luego buscaría todos los controles dentro de ese (recursivamente), llamándose a sí mismo cada vez que encontrara un nuevo control, etc., y guardando toda su información en un archivo xml como:

                         

Y luego cargarlos de nuevo.

La última vez que lo usé fue en Framework 2, recientemente lo volví a necesitar y lo volví a usar, guarda el archivo XML de la forma habitual, pero no parece actualizar los formularios después de cargar el archivo xml, y parece que no puedo descubre por qué, todo el código parece correcto.

Alguien sabe un buen reemplazo? (el predeterminado, la configuración de la aplicación, utiliza un enfoque que simplemente apesta, el enfoque de especificar un control para guardar es mucho más simple y funciona en todas partes)

Gracias de antemano =)

¿Fue útil?

Solución

Bueno, hago esto pero más explícitamente de lo que estás describiendo. Reuní un conjunto de interfaces y clases para respaldar esto hace algún tiempo. Se usan de la siguiente manera:

readonly ObjectSerializer _serializer;
public MyForm()
{
    _serializer = new ObjectSerializer(this,
        "Top", "Left", "Height", "Width",
        "_splitter.SplitterDistance");
    _serializer.ContinueOnError = true;
}

private void Form_Load(object sender, EventArgs e)
{
    _serializer.Deserialize(new CSharpTest.Net.Serialization.StorageClasses.UserSettingStorage());
}

void Form_Closing(object sender, FormClosingEventArgs e)
{
    _serializer.Serialize(new CSharpTest.Net.Serialization.StorageClasses.UserSettingStorage());
}

La biblioteca que se está utilizando " CSharpTest.Net.Library.dll " se encuentra en:

http://code.google.com/p/csharptest-net

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top