【问题标题】:C# - List<string>' does not contain a definition for 'Items'C# - List<string>' 不包含 'Items' 的定义
【发布时间】:2015-10-16 01:35:49
【问题描述】:

完全错误:

System.Collections.Generic.List&lt;string&gt;' 不包含“Items”的定义,并且找不到接受'System.Collections.Generic.List&lt;string&gt;' 类型的第一个参数的扩展方法“Items”(您是否缺少 using 指令或程序集引用?)

我的任务是使用 savefiledialog 窗口保存一个文本文件,这是我正在使用的代码:

public void Create()
        {
            SaveFileDialog save = new SaveFileDialog();

            save.FileName = "Report.txt";

            save.Filter = "Text File | *.txt";

            if (save.ShowDialog() == DialogResult.OK)
            {

                StreamWriter writer = new StreamWriter(save.OpenFile());

                for (int i = 0; i < _Reports.Items.Count; i++)
                {

                    writer.WriteLine(_Reports.Items[i].ToString());

                }

                writer.Dispose();
                writer.Close();

            }
        }

我还使用

初始化了列表
List<string> _Reports = new List<string>();

但不支持列表的 Items 方法。有没有办法解决这个问题?

【问题讨论】:

  • 应该只是_Reports.Count,Items 是一个VB 属性。你在for循环里面也有同样的问题,应该是_Reports[i].ToString(),去掉Items属性。
  • @RonBeyer 哦!谢谢!!现在完美运行。

标签: c# list listbox


【解决方案1】:

没有“项目”属性。你可以阅读List类here

这将只是 _Reports.Count

【讨论】:

    【解决方案2】:

    你的错误说明了一切。 List&lt;string&gt; 没有什么叫做 item 所以你的代码应该是

    public void Create()
    {
        SaveFileDialog save = new SaveFileDialog();
        save.FileName = "Report.txt";
        save.Filter = "Text File | *.txt";
        if (save.ShowDialog() == DialogResult.OK)
        {
            StreamWriter writer = new StreamWriter(save.OpenFile());
            for (int i = 0; i < _Reports.Count; i++)
            {
                writer.WriteLine(_Reports[i].ToString());
            }
            writer.Dispose();
            writer.Close();
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-26
      • 1970-01-01
      • 2016-06-20
      • 2015-05-22
      • 2017-11-20
      • 1970-01-01
      • 2017-04-08
      • 2023-01-09
      相关资源
      最近更新 更多