Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
As configurações de aplicativo permitem que um aplicativo do Windows Forms ou ASP.NET armazene e recupere configurações com escopo de aplicativo e no escopo do usuário. Nesse contexto, uma configuração é qualquer informação que possa ser específica para o aplicativo ou específica para o usuário atual – qualquer coisa, desde uma cadeia de conexão de banco de dados até o tamanho da janela padrão preferencial do usuário.
Por padrão, as configurações de aplicativo em um aplicativo do Windows Forms usam a LocalFileSettingsProvider classe, que usa o sistema de configuração .NET para armazenar as configurações em um arquivo de configuração XML. Para obter mais informações sobre os arquivos usados pelas configurações do aplicativo, consulte a Arquitetura de Configurações do Aplicativo.
Importante
A maioria das seções de configuração definidas pelo .NET Framework não são mais funcionais nas versões .NET 6+ e .NET Core. ConfigurationManager é fornecido apenas para compatibilidade. Em vez de app.config, o .NET moderno usa o arquivo appsettings.json para configurações de aplicativo. Consulte Modernizar depois de atualizar para o .NET do .NET Framework.
Considere remover o uso em app.config e chamar a API correspondente, se disponível, para fazer a mesma configuração. Para obter mais informações, confira Configuração no .NET.
As configurações do aplicativo definem os seguintes elementos como parte dos arquivos de configuração que ele usa.
| Elemento | Description |
|---|---|
<applicationSettings> |
Contém todas as <setting> marcas específicas do aplicativo. |
<userSettings> |
Contém todas as <setting> marcas específicas para o usuário atual. |
<setting> |
Define uma configuração. Filho de qualquer um <applicationSettings> ou <userSettings>. |
<value> |
Define o valor de uma configuração. Filho de <setting>. |
<applicationSettings> elemento
Esse elemento contém todas as <setting> marcas específicas para uma instância do aplicativo em um computador cliente. Ele não define nenhum atributo.
<userSettings> elemento
Esse elemento contém todas as <setting> marcas específicas para o usuário que está usando o aplicativo no momento. Ele não define nenhum atributo.
<setting> elemento
Esse elemento define uma configuração. Ele tem os atributos a seguir.
| Attribute | Description |
|---|---|
name |
Obrigatório A ID exclusiva da configuração. As configurações criadas por meio do Visual Studio são salvas com o nome ProjectName.Properties.Settings. |
serializeAs |
Obrigatório O formato a ser usado para serializar o valor em texto. Os valores válidos são: - string. O valor é serializado como uma cadeia de caracteres usando um TypeConverter.- xml. O valor é serializado usando a serialização XML.- binary. O valor é serializado como binário codificado em texto usando serialização binária.- custom. O provedor de configurações tem conhecimento inerente dessa configuração e serializa e a des serializa. |
Adicione os nomes para as configurações que você cria <applicationSettings> como entradas sob o <configSections> elemento na parte superior do arquivo. Por exemplo:
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="WindowsFormsApp1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
<section name="WindowsFormsApp1.Properties.MyCustomSettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
...
</configuration>
<value> elemento
Esse elemento contém o valor de uma configuração.
Example
O exemplo a seguir mostra um arquivo de configurações de aplicativo que define duas configurações com escopo de aplicativo e duas configurações com escopo de usuário:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="WindowsApplication1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</sectionGroup>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="WindowsApplication1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" />
</sectionGroup>
</configSections>
<applicationSettings>
<WindowsApplication1.Properties.Settings>
<setting name="Cursor" serializeAs="String">
<value>Default</value>
</setting>
<setting name="DoubleBuffering" serializeAs="String">
<value>False</value>
</setting>
</WindowsApplication1.Properties.Settings>
</applicationSettings>
<userSettings>
<WindowsApplication1.Properties.Settings>
<setting name="FormTitle" serializeAs="String">
<value>Form1</value>
</setting>
<setting name="FormSize" serializeAs="String">
<value>595, 536</value>
</setting>
</WindowsApplication1.Properties.Settings>
</userSettings>
</configuration>