Listview and sorting in a widget.

What I been wanting to do is make a list that I have on a crafting bench where when the player opens my crafting bench that they see items that are craftable. The issue is that I need to be able to select one item to be crafted. From what I have read. The only way to do this is to use a Listview, I’m looking to do something like this

Category Name
Ingots
List the different Ingots here
Category Name;
Tools
List the tools here
Category Name
Weapons
list weapons here

and so on. The item name has to be selected in order for it to craft it. I search google like crazy and came up with nothing I wanted to do. Anyone have an idea on how to do this.