ItemsPanelTemplate Selector en wpf?

Necesito establecer la propiedad ItemsPanelTemplate de un cuadro de lista basado en una propiedad de dependencia en el control. ¿Cómo uso el DataTemplateSelector para hacer eso?

Tengo algo como:

<ListBox.ItemsPanel>
    <ItemsPanelTemplate>
        <!-- Here I need to replace with either a StackPanel or a wrap panel-->
    </ItemsPanelTemplate>
</ListBox.ItemsPanel>

Gracias

Respuestas a la pregunta(2)

Su respuesta a la pregunta