Modelo de item diferente para cada item em uma lista do WPF?

Eu tenho muitos itens dentro de um controle de lista. Eu quero que cada item tenha um modelo de item diferente, dependendo do tipo do item. Portanto, o primeiro item da lista é um tipo de objeto e, portanto, quero que ele seja processado com ItemTemplateA. O segundo item é do tipo ObjectB e, portanto, quero que o ItemTemplateB seja renderizado. No momento, só posso usar a configuração ItemTemplate para definir um modelo para todos eles. Qualquer maneira de conseguir isso?

questionAnswers(2)

yourAnswerToTheQuestion