Cómo: Crear la configuración de la aplicación
Actualización: noviembre 2007
Mediante el código administrado, puede crear nuevos valores de configuración de la aplicación y puede enlazarlos a las propiedades o controles del formulario, de modo que estos valores se carguen y se guarden automáticamente en tiempo de ejecución.
En el procedimiento siguiente, puede crear manualmente una clase contenedora que deriva de ApplicationSettingsBase. Agregue a esta clase una propiedad públicamente accesible para cada configuración de la aplicación que desea exponer.
También puede realizar este procedimiento utilizando el mínimo de código en el diseñador de Visual Studio.
Para crear una nueva configuración de la aplicación mediante programación
Agregue una nueva clase a su proyecto y cámbiele el nombre. Para este procedimiento, se debe llamar a esta clase MyUserSettings. Cambie la definición de clase para que la clase derive de ApplicationSettingsBase.
Defina una propiedad en esta clase contenedora para cada valor de configuración de la aplicación necesario y aplique esa propiedad con ApplicationScopedSettingAttribute o UserScopedSettingAttribute dependiendo del ámbito de la configuración. Para obtener más información sobre la configuración del ámbito, vea Introducción a la configuración de la aplicación. Ahora el código debería tener esta apariencia:
Imports System.Configuration Public Class MyAppSettings Inherits ApplicationSettingsBase <UserScopedSetting()> _ <DefaultSettingValue("white")> _ Public Property BackgroundColor() As Color Get BackgroundColor = Me("BackgroundColor") End Get Set(ByVal value As Color) Me("BackgroundColor") = value End Set End Property End Class
using System; using System.Configuration; using System.Drawing; public class MyUserSettings : ApplicationSettingsBase { [UserScopedSetting()] [DefaultSettingValue("white")] public Color BackgroundColor { get { return ((Color)this["BackgroundColor"]); } set { this["BackgroundColor"] = (Color)value; } } }
Cree una instancia de esta clase contenedora en la aplicación. Normalmente será un miembro privado del formulario principal. Ahora que ha definido la clase, necesita enlazarlo a una propiedad; en este caso, la propiedad BackColor del formulario. Puede lograr esto en el controlador de eventos de su formulario Load .
Dim Mus As MyAppSettings Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Mus = New MyAppSettings() Mus.BackgroundColor = Color.AliceBlue Me.DataBindings.Add(New Binding("BackColor", Mus, "BackgroundColor")) End Sub
MyUserSettings mus; private void Form1_Load(object sender, EventArgs e) { mus = new MyUserSettings(); mus.BackgroundColor = Color.AliceBlue; this.DataBindings.Add(new Binding("BackColor", mus, "BackgroundColor")); }
Si proporciona una manera de cambiar la configuración en tiempo de ejecución, necesitará guardar en el disco la configuración actual del usuario cuando cierre el formulario, o de otro modo se perderán estos cambios.
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing Mus.Save() End Sub
Ahora ha creado correctamente una nueva configuración de la aplicación y la ha enlazado a la propiedad especificada.
Seguridad
El proveedor de configuración predeterminada, LocalFileSettingsProvider, guarda la información en los archivos de configuración como texto sin formato. Esto limita la seguridad a la seguridad de acceso a archivos proporcionada por el sistema operativo para el usuario actual. Debido a esto, se debe tener cuidado con la información almacenada en los archivos de configuración. Por ejemplo, un uso común de la configuración de la aplicación es almacenar cadenas de conexión que señalan al almacén de datos de la aplicación. Sin embargo, debido a aspectos relacionados con la seguridad, tales cadenas no deberían incluir contraseñas. Para obtener más información sobre cadenas de conexión, vea SpecialSetting.
Vea también
Tareas
Cómo: Validar la configuración de la aplicación
Conceptos
Introducción a la configuración de la aplicación