【问题标题】:How to access an indexed string from a string collection saved in settings?如何从保存在设置中的字符串集合中访问索引字符串?
【发布时间】:2017-04-15 06:37:06
【问题描述】:

我的设置中有几个字符串数组,标记为 meas1、meas2、meas3 等...

如果我想将每个字符串集合中的第 6 项设置为“”,我该怎么做?以下是我尝试失败的错误代码:

for (int i = 19; i >= 0; i--)
{
    Properties.Settings.Default["meas" + i][5] = "";
}

我知道我可以做Properties.Settings.Default.meas1[5] = "";,但我希望我有很多我需要做的测量,所以最好使用 for 循环。

【问题讨论】:

    标签: c# string syntax settings stringcollection


    【解决方案1】:

    也许将项目名称和转换结果传递给StringCollection 会有所帮助:

    for (int i = 19; i >= 0; i--)
    {
        var prop = Properties.Settings.Default["meas" + i] as StringCollection;
        prop[5] = "";
    }
    Properties.Settings.Default.Save();
    

    您需要将as string[] 替换为您的确切数据类型。但以上解决了您按名称访问项目的问题。

    【讨论】:

    • 您能否稍微扩展一下“您需要用您的确切数据类型替换为字符串[]”的意思。不是字符串吗?
    • 您的设置值的确切类型是什么?自定义字符串数组?还是普通的StringCollection
    • 正常StringCollection
    • @J.Doe 您对上述编辑的答案有疑问吗?
    • 将设置属性转换为字符串集合时出错:(通过删除属性来修复它,因此您只剩下:var prop = Properties.Settings.Default["meas" + i] as System.Collections.Specialized.StringCollection
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-28
    • 2021-12-06
    • 2012-11-25
    相关资源
    最近更新 更多