[WPF] Use arquivos de configurações para armazenar e ler variáveis persistentes

No WPF, você pode usar arquivos de configurações para armazenar e ler variáveis ​​persistentes. Aqui está um exemplo:

  1. Abra seu projeto WPF no Visual Studio.
  2. No Solution Explorer, clique com o botão direito no projeto e selecione "Propriedades".
  3. Na janela de propriedades, selecione a guia "Configurações".
  4. No arquivo Configurações, adicione um novo item de configuração. Você pode especificar um nome, tipo e valor padrão para esta configuração.

Por exemplo, suponha que você queira armazenar uma variável de string persistente:

  • nome:MyVariable
  • tipo:string
  • valor padrão:"Default Value"

Uma vez configurada, a variável pode ser armazenada e lida na aplicação usando o seguinte código:

// 存储变量
Properties.Settings.Default.MyVariable = "New Value";
Properties.Settings.Default.Save();

// 读取变量
string myValue = Properties.Settings.Default.MyVariable;

No exemplo acima, usamos Properties.Settings.Defaultpara acessar as variáveis ​​no arquivo Configurações. Para armazenar uma variável, atribuímos o novo valor à MyVariablepropriedade e chamamos Save()um método para salvar a configuração. Para ler uma variável, podemos MyVariableobter seu valor acessando a propriedade.

Observe que as variáveis ​​armazenadas permanecem disponíveis após o aplicativo ser fechado e permanecem inalteradas na próxima vez que o aplicativo for aberto. No entanto, se você precisar alterar dinamicamente o valor de uma variável enquanto seu aplicativo estiver em execução, será necessário chamar um Properties.Settings.Default.Reload()método para recarregar as configurações antes de defini-las.

Evite somente leitura

De acordo com o trecho de código que você forneceu, LanIPa propriedade é somente leitura, o que significa que só pode ser usada para obter o valor de uma configuração, não para defini-la.

No arquivo de configurações do WPF, as configurações somente leitura podem ser criadas das seguintes maneiras:

[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
public string LanIP {
    
    
    get {
    
    
        return ((string)(this["LanIP"]));
    }
}

No código acima, UserScopedSettingAttributee DebuggerNonUserCodeAttributesão atributos opcionais usados ​​para fornecer metadados adicionais e informações de depuração.

Para definir o valor de uma configuração, você precisa adicionar uma configuração gravável ao arquivo Configurações. Por exemplo:

[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
public string LanIP {
    
    
    get {
    
    
        return ((string)(this["LanIP"]));
    }
    set {
    
    
        this["LanIP"] = value;
    }
}

No código acima, adicionamos um setacessador que permite definir LanIPo valor. Ao usar este item de configuração, você pode LanIPobter e definir o valor do item de configuração por meio de propriedades.

Observe que após alterar o valor de um item de configuração, você precisa chamar Save()um método para salvar a configuração para que as alterações persistam após o fechamento do aplicativo.

usar

string ip = Properties.Settings.Default.LanIP;
Para determinar se uma string é um endereço IP válido, você pode usar IPAddress.TryParse()o método. No seu código, isso pode ser feito usando:

string ip = Properties.Settings.Default.LanIP;
bool isValidIP = IPAddress.TryParse(ip, out IPAddress ipAddress);

if (isValidIP)
{
    
    
    // IP地址有效,可以继续处理
}
else
{
    
    
    // IP地址无效,进行相应的处理
}

おすすめ

転載: blog.csdn.net/gao511147456/article/details/135188183