【问题标题】:How to show subitems below an item in a listview in C#?如何在 C# 的列表视图中显示项目下方的子项目?
【发布时间】:2013-06-01 01:15:08
【问题描述】:

有没有办法在下面的列表视图中显示项目的子项目?我不想将第一列中的项目和后续列中的后续子项目分开,我希望将它们全部放在一个列中,如果还有更多项目,我希望每个项目用一行分隔。类似的东西,但在 C# 中。

如果不可能的话,是否可以让每个项目都像一个可扩展的列表?

我现在的代码是:

lstEvents.View = View.Details;
lstEvents.ForeColor = Color.Black;
lstEvents.Columns.Add("Events");
ListViewItem item = new ListViewItem("Event name");
item.SubItems.Add("23/04/2012");
item.SubItems.Add("$20000");
item.SubItems.Add("this would be the event description");

我正在使用 Windows 窗体

【问题讨论】:

    标签: c# listview


    【解决方案1】:

    在平铺视图中,每个“列”在主列下方显示为“行”。这会给你你所要求的,但可能不是你想要的。

    您可以通过所有者绘制 Tile 视图来生成类似的内容


    (来源:sourceforge.net

    您可以只使用一个普通的 ListView 自己完成这一切,但 ObjectListView project 使这非常更容易。

    【讨论】:

    • 嘿,这正是我想要的,我使用了平铺视图,阅读了它的文档,它给了我想要的结果。
    【解决方案2】:

    你可以继承列表视图并自己做。

    或者,您可以使用.Tag = IndexOfPreviousRow 将某些行标记为上一行的子行,并跟踪模型中的关系。不过,这有点 hacky。

    就使用 .NET 列表视图进行本机操作而言,我不相信您可以。

    【讨论】:

      猜你喜欢
      • 2016-08-31
      • 1970-01-01
      • 1970-01-01
      • 2012-05-09
      • 1970-01-01
      • 2011-06-01
      • 1970-01-01
      • 2013-01-26
      相关资源
      最近更新 更多