DRC,
Your attempt uses a different approach from mine. Granted, mine is probably more complicated than it needs to be, as most menus like this do not need to be sorted and re-sorted. Now that I’ve figured out the basics, I’ll try to simplify this, if I have the time.
In the meantime, if you use my approach as a base and look at how the repeater table is laid out, you would just copy an item from the level you need and update with your details. For instance, here is a Level 1 item, “Mineral”:
Notice the “Order” column has a number and an exclamation point, “3!” so every Level 1 item must follow this syntax --I’m using the number to allow sorting of the list (“Mineral” is the third item in Level 1) and the “!” to uniquely identify top level items in the filters when they need to be collapsed/expanded/selected (it was just easier to have at least 2 characters in this cell, but the logic could be improved, I’m sure.) Likewise, the Name column allows sorting alphabetically. This was basically to let me test how Axure handles sorting–more on that below.
If you don’t need to sort your list, the Order and Name columns aren’t technically required. You could remove these if you adjust the filter logic accordingly.
To add another Level 1 at bottom of list just increment the number and carry down the syntax used for Level 1:
Same for Level 2:
These two new items belong to “Other” which is the fourth Level 1 item, thus ordered “4”, so they are “children of 4” and inherit “4” to denote their parent. Level 2 is ordered by letter instead of number (*See below for reason) so the first item, “Liquid” gets an “a”, the next a “b” and so on. Every Level 2 item must have this same syntax.
Same for Level 3:
The Level 3 items are again sorted by number, so they inherit their parent’s “a” and their grandparent’s “4”. Again, it is just a matter of using the same syntax: all Level 3 items must have . Notice they don’t need to be directly under “Liquid” in the table, because the whole thing can be sorted later, or in the repeater’s OnLoad event to make it a default.
*I initially tried to use the “dot-number” ordering scheme, similar to what skb shows–although that whole prototype is also a different approach from mine. However, the sorting failed: all the Level 3 items went to the bottom of the list. It appears Axure interprets 1.1.1 as greater than 1.2 and 2.2 --so a properly sorted list should be:
__1
____1.1
______1.1.1
______1.1.2
____1.2
______2.1.1
______2.1.2
______2.1.3
etc…
But it turns out that sorting by “Order” ends up looking like:
__1
____1.1
____1.2
______1.1.1
______1.1.2
______2.1.1
______2.1.2
______2.1.3
This is why I resorted to using an alphanumeric multi-ordered list sort, which does get properly sorted by Axure with:
__1
____1a
______1a1
______1a2
____1b
______1b1
______1b2
__2
____2a
______2a1
______2a2
etc…



