C#动态获取变量名和值在Class(C# Dynamically Get Variable Name

2019-09-22 02:48发布

我目前做节目(C#.NET 4)具有多个选项,这些选项保存到一个文件。

这些选项在代码自身的变量,我想知道是否有一种方式来获得这些选项的变量和值在代码中动态。

就我而言,我有这些选项在“设置”类,而我使用Settings.varSetting从我的主窗体类访问它们。

我获取和设置在代码中的多个地方这些变量; 是否有可能合并的变量列表,这样我可以访问并设置它们(例如,创建一个设置形成拉动可用的选项和他们的价值观和动态绘制的形式)更容易/一致?

以下是当前变量我在设置类:

    public static Uri uriHomePage = new Uri("http://www.google.com");
    public static int intInitOpacity = 100;
    public static string strWindowTitle = "OpaciBrowser";
    public static bool boolSaveHistory = false;
    public static bool boolAutoRemoveTask = true; //Automatically remove window from task bar if under:
    public static int intRemoveTaskLevel = 50; //percent
    public static bool boolHideOnMinimized = true;

谢谢你的帮助,

卡尔Tatom(TheMusiKid)

Answer 1:

var dict = typeof(Settings)
    .GetFields(BindingFlags.Static | BindingFlags.Public)
    .ToDictionary(f=>f.Name, f=>f.GetValue(null));


Answer 2:

你可能要考虑使用的应用程序设置内置的加载和存储应用程序设置的框架功能。



Answer 3:

阅读感言: http://msdn.microsoft.com/en-us/library/ms173183%28v=vs.100%29.aspx



文章来源: C# Dynamically Get Variable Names and Values in a Class