8

我在 ListView 类上看到了这个签名:

public ListView..::.ListViewItemCollection Items { get; }

当我看到它时,“什么?!”

我搜索了“点点冒号冒号点”和“..::.” 在谷歌上没有结果。

替代文字

4

2 回答 2

13

那不是 C#;那是JScript。在 C# 中,它将是:

公共 ListView.ListViewItemCollection 项目 { 获取;}

有点不同,因为 ListViewItemCollection 是 ListView 的一个内部类。

我猜您在查看ListView.Items Property (System.Windows.Forms)时看到了这个。

如果您查看所有其他语言的列表,它们都以 JScript 语法列出。您发现了一个文档错误。

于 2008-11-25T07:05:52.080 回答
-4

ListViewItemCollection 是 ListView 的嵌套类型,这意味着在代码中,Collection 类是在 ListView 定义内部定义的,如下所示:

public class ListView {
  public ListViewItemCollection Items {get;}

  public class ListViewItemCollection : IList {
    // more code here
  }
}

我会假设它是这样编码的,只是为了让他们的源代码树更干净一点。这样,与 ListView 控件关联的所有帮助器集合类都不会分散在整个目录中。内部类确实有一些特殊的特性,但我无法想象在这里适用。

于 2008-11-25T07:20:18.247 回答