Phil Middlemiss describes a technique to use multiple data templates inside an ItemsControl, DataGrid or other controls that show lists of items.
![](/storage/users/philm/stafflist.png)
For example, I may have a collection of company staff members to display in a single ListBox, but the managerial staff need to have extra information displayed (they always do!), and each level is styled slightly differently like this for example: