GVKun编程网logo

c# – Properties.Settings将不会被保存(c# settings.default)

15

想了解c#–Properties.Settings将不会被保存的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于c#settings.default的相关问题,此外,我们还将为您介绍关于And

想了解c# – Properties.Settings将不会被保存的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于c# settings.default的相关问题,此外,我们还将为您介绍关于Android SystemProperties和Settings.System介绍,不同应用间传递信息、c# – Properties.Settings.Default.Save()将user.config文件存储在带有哈希的目录中、c# – 使用Properties.Settings进行应用程序设置、C#中使用设置(Settings.settings) Properties.Settings.Default .(配置文件相当重要)的新知识。

本文目录一览:

c# – Properties.Settings将不会被保存(c# settings.default)

c# – Properties.Settings将不会被保存(c# settings.default)

我正在尝试保存两个用户值(SliderWidth和SliderHeight).我想使用Visual Studio选项设置执行此操作.

当我使用此代码调试时:

public void Test(int value)
    {
        Properties.Settings settings = Properties.Settings.Default;
        settings.SliderWidth = value;
        settings.Save();
    }

值不会更改(程序结束后).

怎么了?

解决方法

@H_301_20@ 绝对有效.试试这个:

public void Test(int value)
{
    Properties.Settings settings = Properties.Settings.Default;

    MessageBox.Show("Last SliderWidth = " + settings.SliderWidth.ToString());

    settings.SliderWidth = value;
    settings.Save();
}

但是保存的值不会反映在屏幕截图中显示的Designer窗口中.这些是初始默认值.

Android SystemProperties和Settings.System介绍,不同应用间传递信息

Android SystemProperties和Settings.System介绍,不同应用间传递信息

1 使用 SystemProperties.get

这中方法在framework里面 经常见到。

特别属性

如果属性名称以“ro.”开头,那么这个属性被视为只读属性。一旦设置,属性值不能改变。
如果属性名称以“persist.”开头,当设置这个属性时,其值也将写入/data/property。

在c++中就是对应JAVA的两个函数就是property_set property_get,其实JAVA是通过JNI调用这两个函数的。

JAVA
import android.os.SystemProperties;

SystemProperties.set("persist.sys.language", zone.getID());
String lang= SystemProperties.get("persist.sys.language");

C

#include <cutils/properties.h>

property_set("persist.sys.language", "zh");
property_get("persist.sys.language", propLang, "en");

在adb shell可以通过以下的命名读取和修改

#getprop  persist.sys.language
#setprop   persist.sys.language  zh 

2 使用 Settings.System.putInt  

这种方式会保存变量到Settings 数据库中,飞行模式等的开关就是用这种方式实现的。

在AndroidManifest.xml中包含权限:

<uses-permission android:name=”android.permission.WRITE_SETTINGS” />

在需要发送数据的java文件中,包含:

import android.provider.Settings;
import android.content.ContentResolver;

ContentResolver resolver = mContext.getContentResolver();
Settings.System.putInt(resolver,”inputFlag”,1);

同理,在接收数据端:

Settings.System.getInt(resolver,”inputFlag”,3);

mContext为所在应用的上下文。

文章出处:http://blog.csdn.net/offbye/article/details/6689322

c# – Properties.Settings.Default.Save()将user.config文件存储在带有哈希的目录中

c# – Properties.Settings.Default.Save()将user.config文件存储在带有哈希的目录中

我尝试保存用户设置.为了保存一些数据我使用了这段代码:

Properties.Settings settings = Properties.Settings.Default;
settings.Key1 = "value";
settings.Save();

但它将user.config文件保存在以下路径下:

C:\Users\Me\AppData\Local\[CompanyName]\[ExeName]_Url_[some_hash]\[Version]\user.config

这个_Url_ [some_hash]非常难看,我怎么能删除它?

解决方法

在这里查看更多信息
http://msdn.microsoft.com/en-us/library/aa730869%28v=vs.80%29.aspx

c# – 使用Properties.Settings进行应用程序设置

c# – 使用Properties.Settings进行应用程序设置

我使用Visual Studio提供的内置设置来存储简单的应用程序设置.直到现在,我已经通过使用惯例在我的应用程序中访问了这个:
Properties.Settings.Default.MySetting

然后调用方法,如保存使用:

Properties.Settings.Default.Save()

然而,最近有人告诉我,通过创建一个成员变量来访问属性是更正确的:

private Properties.Settings settings = new Properties.Settings()

然后使用成员设置访问属性和方法,如:

settings.MySetting
settings.Save()

我模糊地回忆说,他们通过描述设置存储在用户区域的方式的差异来证明这一点.

任何人都可以确认或进一步说明差异的细节吗?非常感谢.

解决方法

Settings.Default被初始化如下:
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));

因此,手动创建“设置”实例几乎相同,但由Settings.Default提供的实例是同步实例.手动创建设置实例无法看到任何好的理由…

C#中使用设置(Settings.settings) Properties.Settings.Default .(配置文件相当重要)

C#中使用设置(Settings.settings) Properties.Settings.Default .(配置文件相当重要)

C#中使用设置(Settings.settings) Properties.Settings.Default .

2016年08月04日 15:02:43 zxd9790902 阅读数:10664更多
个人分类: c#
 https://blog.csdn.net/ZXD9790902/article/details/52119340

 

在设计时创建新设置的步骤

在“Solution Explorer”(解决方案资源管理器)中,展开项目的“Properties”(属性)节点。

在“Solution Explorer”(解决方案资源管理器)中,双击要在其中添加新设置的 .settings 文件。此文件的默认名称是 Settings.settings。

 

 

为设置键入新值,然后保存该文件。

在运行时使用设置

 

运行时应用程序可以通过代码使用设置。具有应用程序作用域的设置值能够以只读方式进行访问,而用户作用域设置的值可以进行读写。在 C# 中可以通过 Properties 命名空间使用设置。

在运行时读取设置

可在运行时使用 Properties 命名空间读取应用程序作用域及用户作用域设置。Properties 命名空间通过Properties.Settings.Default 对象公开了项目的所有默认设置。编写使用设置的代码时,所有设置都会出现在 IntelliSense 中并且被强类型化。因此,举例来说,如果设置的类型为 System.Drawing.Color,则无需先对其进行强制类型转换即可使用该设置,如下例所示:

this.BackColor = Properties.Settings.Default.myColor;

在运行时保存用户设置

应用程序作用域设置是只读的,只能在设计时或通过在应用程序会话之间修改 <AssemblyName>.exe.config 文件来进行更改。然而,用户作用域设置却可以在运行时进行写入,就像更改任何属性值那样。新值会在应用程序会话持续期间一直保持下去。可以通过调用 Settings.Save 方法来保持在应用程序会话之间对用户设置所做的更改。这些设置保存在 User.config 文件中。

在运行时写入和保持用户设置的步骤

访问用户设置并为其分配新值,如下例所示:

Properties.Settings.Default.myColor = Color.AliceBlue;

如果要保持在应用程序会话之间对用户设置所做的更改,请调用 Save 方法,如以下代码所示:

Properties.Settings.Default.Save();

 

 

 

=========================================================================================================================================================================================================================================================================================================================================================================================================

 

 

1、定义

 

在Settings.settings文件中定义配置字段。把作用范围定义为:User则运行时可更改,Applicatiion则运行时不可更改。可以使用数据网格视图,很方便;

2、读取配置值

text1.text = Properties.Settings.Default.FieldName;
//FieldName是你定义的字段

3、修改和保存配置

Properties.Settings.Default.FieldName = "server";

Properties.Settings.Default.Save();//使用Save方法保存更改

4、也可以自己创建

创建一个配置类FtpSetting。在WinForm应用程序里,一切配置类都得继承自 ApplicationSettingsBase 类。

sealed class FtpSettings : ApplicationSettingsBase

{
[UserScopedSetting]
[DefaultSettingValue("127.0.0.1")]
public string Server
{
get { return (string)this["Server"]; }
set { this["Server"] = value; }
}
[UserScopedSetting]
[DefaultSettingValue("21")]
public int Port
{
get { return (int)this["Port"]; }
set { this["Port"] = value; }
}
}


使用上述配置类,可以用:

private void button2_Click(object sender, EventArgs e)
{
FtpSettings ftp = new FtpSettings();
string msg = ftp.Server + ":" + ftp.Port.ToString();
MessageBox.Show(msg);
}


我们在使用上述FtpSetting 配置时,当然要先进行赋值保存,然后再使用,后面再修改,再保存,再使用。
private void button2_Click(object sender, EventArgs e)
{
FtpSettings ftp = new FtpSettings();
ftp.Server = "ftp.test.com";
ftp.Port = 8021;
ftp.Save();
ftp.Reload();
string msg = ftp.Server + ":" + ftp.Port.ToString();
MessageBox.Show(msg);
}
嗯。已经Save了,你可能会在应用程序文件夹里找不到它到底保存到哪里去了。由于我们是用UserScope的,所以其实该配置信息是保存到了你的Windows的个人文件夹里去了。比如我的就是 C:\Documents and Settings\brooks\Local Settings\Application Data\TestWinForm目录了。


 

 

=========================================================================================================================================================================================================================================================================================================================================================================================================

 

 

例:

using System;

using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;


using System.Configuration;

namespace 设置文件读写测试
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Properties.Settings.Default.name = this.textBox1.Text;
            Properties.Settings.Default.Save();
            this.label1.Text = Properties.Settings.Default.name;
        }

        private void button2_Click(object sender, EventArgs e)
        {
            this.label1.Text = Properties.Settings.Default.name;
        }

        private void button3_Click(object sender, EventArgs e)
        {
            FtpSettings ftp = new FtpSettings();
            string msg = ftp.Server + ":" + ftp.Port.ToString();
            this.label2.Text = msg;
        }

        private void button4_Click(object sender, EventArgs e)
        {
            FtpSettings ftp = new FtpSettings();
            ftp.Server = this.textBox2.Text ;
            ftp.Port = Convert.ToInt32(this.textBox3.Text);
            ftp.Save();
            //ftp.Reload();
            string msg = ftp.Server + ":" + ftp.Port.ToString();
            this.label2.Text = msg;
        }
    }

    sealed class FtpSettings : ApplicationSettingsBase
    {
        [UserScopedSetting]
        [DefaultSettingValue("127.0.0.1")]
        public string Server
        {
            get { return (string)this["Server"]; }
            set { this["Server"] = value; }
        }
        [UserScopedSetting]
        [DefaultSettingValue("21")]
        public int Port
        {
            get { return (int)this["Port"]; }
            set { this["Port"] = value; }
        }
    }
}

今天关于c# – Properties.Settings将不会被保存c# settings.default的分享就到这里,希望大家有所收获,若想了解更多关于Android SystemProperties和Settings.System介绍,不同应用间传递信息、c# – Properties.Settings.Default.Save()将user.config文件存储在带有哈希的目录中、c# – 使用Properties.Settings进行应用程序设置、C#中使用设置(Settings.settings) Properties.Settings.Default .(配置文件相当重要)等相关知识,可以在本站进行查询。

本文标签: