我正在编写我的第一个Mono GTK#应用程序,需要一个可以支持多个视图的列表控件,例如列表,详细信息,图标(类似于Windows资源管理器)。
我基本上需要一个TreeView,IconView和NodeView的小部件。
最好我还想将节点分组为子节点。
我的应用程序是电影的元数据抓取器,我可以拥有1000部电影。我想通过信件对它们进行分组,所以“A”将是一个树节点,而不是我会有“Armageddon”,“Antz”,“A Knights Tale”等等,我想将这些电影视为图标(显示海报和标题)和详细信息(显示标题,星级,文件大小,文件位置等)。
我使用原始WinForms应用程序中的ObjectListView控件实现了这一点,但决定此应用程序更适合Mono / GTK#,因此它可以在多个平台(即Mac和Linux)上运行。
有没有这样的小部件,或者我可以自定义TreeView或IconView来实现我的目标吗?
TIA
答案 0 :(得分:1)
不幸的是我无法评论这个问题,所以我只是发一个答案。
在Gtk#中,您可以使用Gtk.TreeView
小部件实现TreeView和NodeView,但它不会像在.NET中那样容易。
IconView将更难实现。您必须使用许多小部件,例如Gtk.Frame
,Gtk.Table
,Gtk.HBox
和Gtk.VBox
才能获得不错的外观。
在Gtk#不幸的是,没有什么是容易的。
回答你的问题:是的,有一个Gtk.TreeView
小部件和许多其他小组件来构建你的IconView。它们非常可定制,但正如我之前所说,这不是一件容易的事。
我希望这会有所帮助。