Чтобы ответить на ваш первый вопрос: «Есть ли простой пример того, как в поле со списком показывать сетку данных вместо списка?» очень прямо: - ответ нет.
Тем не менее, есть несколько различных способов сделать что-то, что выглядит как DataGrid (то есть список со столбцами).
Очень простой пример с подделкой чего-либо, похожего на сетку данных, мог бы изменить ItemTemplate в поле со списком
<ComboBox x:Name="cb" ItemsSource="{Binding Persons}">
<ComboBox.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="50" />
<ColumnDefinition Width="50" />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="{Binding Name}" />
<TextBlock Grid.Column="1" Text="{Binding Age}" />
</Grid>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
Вы также можете использовать SharedSizeGroup
(и Grid.IsSharedSizeScope
) для синхронизации ширины столбцов по всем элементам, что приводит к динамическому и выровненному макету.