Given: an array of items (ItemsSource) each of which potentially has a child. Task: populate the LinearizedItems array with a flattened version of the visible data items. In the process, remove any items that are not visible while maintaining any collapsed items that may have expanded children.