我正在编写我的第一个 Mono GTK# 应用程序,并且需要一个可以支持多个 View 的列表控件,例如列表、详细信息、图标(类似于 Windows 资源管理器)。

我基本上需要一个将 TreeView、IconView 和 NodeView 合二为一的小部件。

最好我也想将节点分组为子节点。

我的应用程序是一个用于电影的元数据采集器,我可以在其中拥有 1000 部电影。我想按字母将它们分组,所以“A”将是一个树节点,比我有“Armageddon”、“Antz”、“A Knights Tale”等要低,我想将这些电影视为图标(显示海报和标题)和详细信息(显示标题、星级、文件大小、文件位置等)。

我在我原来的 WinForms 应用程序中使用 ObjectListView 控件实现了这一点,但决定这个应用程序更适合 Mono/GTK#,因此它可以在多个平台(即 Mac 和 Linux)上运行。

有没有这样的小部件,或者我可以自定义 TreeView 或 IconView 来实现我所追求的吗?

TIA

最佳答案

不幸的是,我无法对这个问题发表评论,所以我只是发布了一个答案。

在 Gtk# 中,您可以使用 Gtk.TreeView 小部件同时实现:TreeView 和 NodeView,但是它不像在 .NET 中那么容易。

IconView 会有点难以实现。您将不得不使用许多小部件,如 Gtk.FrameGtk.TableGtk.HBoxGtk.VBox 来获得体面的外观。

不幸的是,在 Gtk# 中没有什么是容易的。

回答您的问题:是的,有一个 Gtk.TreeView 小部件和许多其他小组件可以用来构建您的 IconView。它们非常可定制,但正如我之前所说,这不是一件容易的事。

我希望这有帮助。

关于c# - 具有多个 View 的 Mono GTK# View 列表(图标、详细信息、列表等),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8872925/

10-10 20:55